О проектировании данных для клиент-серверных приложений С++Builder
Наталия Елманова
"Компьютер-Пресс", 1998, N 2
Известно,
что информационные
системы, основанные на
архитектуре клиент/сервер,
могут обладать
существенными
преимуществами по
сравнению с
информационными
системами, основанными на
сетевых версиях
настольных СУБД, такими,
как высокая
производительность,
низкий сетевой трафик,
встроенные средства
обеспечения безопасности
и целостности данных,
возможность хранения
бизнес-правил в базе
данных и использования их
при создании клиентских
приложений. Однако
использование всех этих
преимуществ может быть
эффективным, во-первых, при
корректном проектировании
данных, и, во-вторых, при
соблюдении правил
оптимизации как серверной,
так и клиентской частей
информационной системы.
Проблема
проектирования данных
носит общий характер и не
имеет прямого отношения к
выбору средства
разработки. Использование
современных средств
проектирования баз данных,
и, в частности,
CASE-технологии, существенно
облегчает решение этой
проблемы, но отнюдь не
устраняет ее. Причина
этого заключается в том,
что ннформационные
системы создаются
программистами,
являющимися чаще всего
экспертами в
программировании, а вовсе
не в той предметной
области, для которой
создается информационная
система, и взаимодействие
программиста с заказчиком
нередко осложнено чисто
терминологическим
взаимным непониманием.
Создание
информационной системы
обычно начинается с
определения того, для чего
она предназначена, из
каких автоматизированных
рабочих мест она состоит,
какие документы или иные
информационные объекты
являются результатом ее
работы. Как правило, все
эти сведения содержатся в
техническом задании. После
этого можно приступить к
проектированию данных.
Проектирование
данных в значительной
степени является тем
процессом, где обе
категории исполнителей, и
эксперты в предметной
области, и программисты,
должны прийти к соглашению
относительно того, какие
объекты регистрируются в
информационной системе и
как они связаны с другими
регистрируемыми
объектами, а также
относительно реализации
хранения сведений о них.
Соответственно говорят о
логическом проектировании
как об описании
характеристик наборов
объектов, сведения о
которых будут
накапливаться и
использоваться в
информационной системе, и
о физическом
проектировании,
представляющем собой
описание таблиц, индексов,
а также триггеров,
хранимых процедур,
представлений (Views), если
таковые поддерживаются
данной СУБД.
Не
вдаваясь в подробности
теории реляционных СУБД
(этой теме посвящено
немало книг и статей),
перечислим некоторые
термины, применяющиеся при
проектировании, и основные
принципы проектирования
данных.