Базы данных. Проектирование и создание
66
Адаптация к изменениям информационных потребностей пользователей, воз-
можность удовлетворения нерегламентированных запросов. Например, если хранить в
БД детальные данные, то любые производные данные можно получить при возникно-
вении необходимости в них; если же хранить только какие-либо сводные данные, но не
хранить исходные, то получить информацию, отличную от хранимой, в большинстве
случаев нельзя.
Адаптация к изменениям используемых программных и технических средств. Ос-
новным способом обеспечения этого требования является соблюдение стандартов, а так-
же, по возможности, использование при выборе проектного решения таких средств, ко-
торые являются широко распространенными, а не специфическими для конкретной сис-
темы. Так, например, использование «экзотических» типов полей, скорее всего, приведет
к проблемам при переносе системы в другую среду или при обработке информации в
гетерогенной среде.
Одним из проявлений рассматриваемого свойства является масштабируемость.
Ведущие разработчики программных продуктов уделяют большое внимание обеспече-
нию этих свойств.
Сложность структуры БД. Речь может вестись как о сложности самой поддержи-
ваемой в данной СУБД модели данных, так и о сложности логической структуры кон-
кретной спроектированной БД.
Сложность модели будет определяться числом разнообразных информационных
единиц, допустимых в ней, способами их соподчинения и связывания, накладываемыми
ограничениями. Самыми простыми из структурированных моделей БД являются реля-
ционные.
Естественно, что показатели сложности спроектированной БД будут зависеть от
типа поддерживаемой модели БД. Сравнение по этому показателю баз данных, спроек-
тированных в среде разных СУБД, будет иметь свою специфику. Для реляционной моде-
ли сложность будет характеризоваться числом таблиц и полей в БД, числом индексных
файлов (индексов). В принципе, чем меньше сложность БД, тем лучше. Однако снижение
сложности, наряду с положительными результатами, часто приводит ко многим отрица-
тельным последствиям. Так, для реляционных систем самой «простой» БД будет одно
универсальное отношение, но к каким последствиям приведет использование такого про-
ектного решения, хорошо известно из теории нормализации.
Поэтому критерий «сложность» никогда не рассматривается как самостоятельный.
Степень дублирования данных в БД. Различают необходимое, контролируемое и
неконтролируемое дублирование. Но какими бы причинами ни было вызвано дублиро-
вание данных, оно всегда ведет к необходимости поддержки идентичности всех копий
дублируемых значений, росту требуемого объема памяти, повышению трудоемкости
корректировки, а также часто ведет и к увеличению числа полей в БД, что увеличивает ее
сложность.
Сложность последующей обработки. Оценить этот показатель достаточно трудно,
так как его значение зависит как от предполагаемой обработки, так и от возможностей
языка манипулирования данными конкретной СУБД. Тем не менее, для большинства
СУБД справедливыми являются утверждения, что:
• легче обрабатывать один файл, чем несколько связанных файлов;
• легче объединить несколько полей, чем выделить отдельные составляющие из
единого поля (например, из «Адреса» – страну, город и т.п., из «ФИО» – фамилию, имя,
отчество и т.п.). Если, например, в каких-либо выходных документах надо вывести фами-
лию и инициалы, то в случае раздельного хранения полей это также легко сделать, на-
пример, просто изменив шаблон вывода для полей «имя» и «отчество» на (Х.)). Однако