I'm guessing if your airline or airport has more than 20 employees you will need a database for many of your SMS requirements.
If you don't have the budget for a database, or if you are one of those talented safety managers with excellent IT skills, then you can build your own safety database.
In this article, we demonstrate how you can design your own safety database within an hour or two.
So let's get started.
Not all operators have the same requirements. You may be storing much of your documentation in SharePoint or on the "network."
Question: What do you need from your aviation safety database?
Answer: I need to manage the requirements for an ICAO-compliant SMS program.
OK, what are the requirements? Quick, read ICAO Document 9859 (and fall asleep and never get anything else done).
There is an easier way. Let's discover quickly what we need to store by reviewing the SMS Documentation that was condensed for your convenience.
From the list on the SMS Documentation link, I see some documentation requirements that scream, I need to be in a database.
These are:
This would be a bare-bones database for your aviation SMS requirements. The other documentation in the list could be managed using Word files and Excel spreadsheets. As a matter of fact, if you are an operator under EASA jurisdiction, your company is required to store safety occurrence reports in a database per EASA Regulation No 376/2014.
From the above analysis, I can see at least four tables: I would name them:
For each of these tables, create a column for each specific data element you wish to capture. For example, in IncidentReports, you may have:
A good rule of thumb is that for every distinct element on your hazard reporting forms, you will have a column to hold the data.
For each of these tables, you should have a primary key. Usually, this is an incrementing integer or GUID. I prefer integers for primary keys as they are more usable.
The table "ClassificationParameters," will be used to hold all unique Classifications you wish to use in your reports. These classifications will also contain your key performance indicators, also known as safety performance indicators. This table will have these columns:
Remember, we are creating a very simple aviation safety database and there could be potentially other columns. We add other fields in this table, such as:
Your RiskAssessments and Investigations tables will have a relationship and a foreign key from IncidentReports table.
Your RiskAssessments table may have these columns:
The Investigations table may have these columns:
Again, your table columns will mirror your investigation reports. You may probably have up to six supporting tables just to manage investigations. We do this for data normalization, which keeps us from having redundant data. You can learn more at the offered link.
While our quick safety database now has four tables, this is very simple. Our aviation safety database has over 400 tables, but we've been doing this for many years.
We have an IncidentReports table holding all the reported issues. We also have a Classification table that holds a list of all possible classification parameters. We need to create a many-to-many table relationship to allow reported issues to be classified. As you know, a reported issue may be classified in many ways.
For example, we may have a runway incursion caused by faulty equipment and poor runway conditions. Both of these items are valid classifications. We need a many-to-many relationship table to hold this data. The table could look like this:
Table Name: ReportClassifications
This is a very simple safety database.
We defined the requirements for our database. We identified which data we needed to store in the safety database.
Then we started creating tables.
Don't worry if you have to go back and make changes. This is a normal process. We have had tables that were designed ten years ago and they occasionally have more data columns added as our needs change.
You will now need a user interface to add the data to your safety database. The user interface can be Web forms or MS Access forms.
We never settled on a database type yet, but we prefer Microsoft SQL Server Database or Oracle Database for enterprise-grade safety solutions.
You probably would like to have some classification parameters to add to your Classifications table. Here is a list of over 200 hazards across multiple categories, including:
Last updated in August 2024.