Одним из направлений решения поставленной проблемы может стать разработка методики на основе методов и стандартов, разработанных для анализа сложных программных средств. В научном сообществе предлагается множество подходов к изучению сложных программных средств, в данной статье рассмотрены три наиболее подходящих, с нашей точки зрения, а именно: методы теории исследования сложных систем, методика количественной оценки и сравнения диаграмм UML, теория метрологии стандартизации и сертификации.
С точки зрения методов теории исследования сложных систем, качественную оценку баз данных (БД) требуется выполнять комплексным критерием сложности в соответствии с методами теории исследования сложных систем, предложенными Н.П. Бусленко. Для комплексной оценки системы необходимо оценивать сложность ее элементов, к которым можно отнести: атрибуты, входящие и исходящие связи, и алгоритмы обработки данных.
Изучение методов теории исследования сложных систем показало, что теория не учитывает типы полей и их количество, кроме того, она ориентирована на динамические системы.
Методика количественной оценки и сравнения диаграмм UML, строится на присвоении элементам диаграмм оценок, зависящих от их информационной ценности, а также от вносимой ими в диаграмму дополнительной сложности. Ценность отдельных элементов меняется в зависимости от типа диаграммы, на которой они находятся.
Словарь языка UML включает два вида строительных блоков: сущности и отношения. Сущности - это абстракции, являющиеся основными элементами модели. Отношения связывают различные сущности. Недостатком диаграммы является как слишком низкая оценка (диаграмма недостаточно информативна), так и слишком высокая оценка (диаграмма обычно слишком сложна для понимания).
Таким образом, при использовании методики количественной оценки диаграмм UML, в процессе анализа качества баз данных, полученный результат является достаточно поверхностным. Данная теория позволяет учитывать только информацию о количестве атрибутов, поэтому она не способна в полной мере отразить сложность и качество спроектированной базы данных.
Перейдем к рассмотрению теория метрологии стандартизации и сертификации применительно к оценке схем реляционных баз данных. Как известно основу метрики Холстеда составляют четыре измеряемых характеристики программы:
- число уникальных операторов программы, включая символы-разделители, имена процедур и знаки операций (словарь операторов);
- число уникальных операндов программы (словарь операндов);
- общее число операторов в программе;
- общее число операндов в программе.
На основании этих характеристик рассчитываются оценки:
1) Словарь программы;
2) Длина программы;
3) Объем программы;
4) Сложность программы.
Для языка SQL, описывающего схемы баз данных, основной сложностью является проведение его синтаксического анализа, т.е. составление словарей операторов и операндов языка.
Результатом оценки, основанной на метрики Холстеда, является достаточно адекватная величина, учитывающая все синтаксические элементы исходного кода, а значит максимально отражающая сложность схемы базы данных.
Изучив и сравнив предложенные модели оценки качества баз данных, можно сделать вывод, что наиболее полно отразить качество спроектированной БД способна модель Холстеда.
Однако, для того чтобы применить метрику Холстеда к языку SQL необходимо определить множества операндов и операторов языка. В процессе исследования были рассмотрены конструкции языка SQL, участвующие в описании баз данных, применяемые в средствах их автоматического проектирования, и выделены необходимые операторы и операнды.
На основании полученных данных разработано программное средство, осуществляющее расчет метрических характеристик схем баз данных по их SQL-скрипам, а также выполняющее вычисление оценок.