ISSN 0236-235X (P)
ISSN 2311-2735 (E)
1

16 Марта 2024

Опыт разработки и стратегия развития СУБД в ГДР


Хайнеманн Р. () -
Ключевое слово:
Ключевое слово:


     

В течение ряда лет большое внимание на комбинате "Роботрон" уделяется разработкам программного обеспечения, которые во многом определяют характер применений программного обеспечения в ГДР.

Для научно-технической политики ГДР, направленной на достижение долгосрочных

целей, характерны:

интенсивные научно-исследовательские работы, проводимые совместно с другими предприятиями и высшими учебными заведениями, например с Техническим университетом г. Дрездена и НП Комбинат "Датен ферарбайтунг";

разработки оригинального программного обеспечения, СУБД, основанные на современном уровне знаний в этой области, достигнутом как в ГДР, так и в наиболее развитых странах;

использование существующих СУБД, удовлетворяющих необходимым требованиям, с последующей заменой их более эффективными системами собственной разработки.

Правильность этой стратегии подтверждена такими разработками, как DBS/R, DABA и AIDOS. Эти системы до настоящего времени с успехом используются в промышленности не только ГДР, но и многих стран мира. Известно, что системы управления базами данных в значительной мере определяют эффективность систем электронной обработки данных. Производители технических средств и поставщики программного обеспечения предлагают для рынка огромное количество самых разных СУБД, как зависящих, так и не зависящих от архитектуры технических средств и системного программного обеспечения.

Перед пользователями СУБД возникли новые проблемы. Несколько лет назад ответ на вопрос: использовать ли готовую СУБД или разработать собственную систему управления данными, ориентированную на конкретное применение, было дать не так-то просто. Сегодня, за редким исключением, ответ ясен - использовать готовые системы. Однако на передний план выдвигаются новые проблемы: с помощью какой системы управления базами данных эффективнее всего можно решить конкретные задачи? Как поддерживается проектирование базы данных конкретного объекта? Какие удобства предоставляют конечному пользователю программные компоненты конкретных СУБД?

Ответить на эти вопросы достаточно сложно из-за большого разнообразия существующих технических средств и программных систем.

Анализ многих общеизвестных СУБД позволяет сделать следующие выводы:

· эффективность выбора и использования конкретной СУБД определяется ее техническим обеспечением;


· использование многих, хорошо зарекомендовавших себя систем ограничено необходимостью приобретения лицензий;
· у большинства СУБД ограничена независимость программ от данных;
· не уделяется достаточного внимания вопросам сопровождения и развития систем в течение их жизненного цикла;
· до сих пор не разработаны единые пользовательские интерфейсы.
Кроме "классических" систем управления базами данных, к программному обеспечению управления данными относятся как информационно-поисковые системы, так и системы коммуникации данных. Так, все подобные системы концептуально можно разделить следующим образом.

Системы управления базами данных (DBMS) реализуют функции, необходимые для рационального хранения, управления и поиска произвольных данных.

Информационно-поисковые системы (DRS) представляют собой специальные системы управления базами данных, рассчитанные на содержательный поиск, главным образом в текстовых наборах данных. Поиск осуществляется при помощи предварительно определенных или автоматически созданных глоссариев или тезаурусов.

Системы коммуникации данных (DCS) программно осуществляют функции, необходимые для организации обработки данных в режиме "ONLINE" в сетях телеобработки данных, что является важной предпосылкой реализации многопользовательского режима для СУБД и информационно-поисковых систем.

Анализ таких широко распространенных и всемирно признанных систем, как ORACLE, INGRES, DB2, dBASE и др., а также опыт применения собственных разработок позволили сформулировать основные требования к новым разработкам. К этим требованиям относятся прежде всего переносимость; независимость данных; стандартизированные интерфейсы; повышение сохранности; эффективное отображение и обработка данных в различных предметных областях; поддержка проектирования данных.

В литературе эти требования и способы их воплощения в системах описаны по отдельности, но комплексно они еще не реализованы ни в одной из доступных систем. Для реализации этих требований на НП Комбинат Роботрон (НП РОБОТРОН-ПРОЕКТ ДРЕЗДЕН) было принято решение начать совместно с СССР (НПО "Центрпрограммсистем", г. Калинин) и в сотрудничестве с НП Комбинат "Датен-ферарбайтунг" разработку новой системы - СУБД INTERBAS - как вклад ГДР и СССР в Комплексную программу научно-технического прогресса стран - членов СЭВ.

В области технического и программного обеспечения изделия должны быть разработаны на уровне мировых стандартов. Мы глубоко убеждены в том, что разработки больших и сложных систем, таких, например, как INTERBAS, с экономической точки зрения оправданы лишь в том случае, если они осуществляюшся в рамках сотрудничества на основе кооперации и связанной с этим возможностью широкого применения разработанных систем в организациях и на предприятиях многих стран.

Опыт проектирования и разработки систем управления базами данных

Основой современного подхода к разработкам программного обеспечения баз данных послужил опыт, накопленный в ГДР в течении более 15 лет. Около 10 лет в ГДР и многих странах мира с успехом используются система DBS/R, поддерживающая сетевую модель данных, не менее известная реляционная система DABA 1600 и информационно-поисковая система AIDOS. Тесное сотрудничество с конечными пользователями при выполнении работ по сопровождению, внедрению и развитию этих систем в значительной степени способствовало достижению современного уровня знаний специалистов в этой предметной области. Был учтен и опыт НП Комбинат "Датен ферарбайтунг" по применению реляционной СУБД TOPAS.

Анализ приобретенного опыта позволил сформулировать следующие требования к системам управления базами данных:

· удобство и простота работы;
· адаптируемость;
· надежность;
· технологичность.
Эти требования являются не только основой при проектировании новых разработок, но и одновременно служат критериями оценки друшх СУБД, используемых в народном хозяйстве ГДР.

Удобство и простота работы Можно утверждать, что удобство обслуживания оказывает решающее влияние на рыночную эффективность СУБД. Такие системы, как dBASE или DB2 получили достаточно широкое распространение именно благодаря наличию производительного и довольно простого в применении интерфейса пользователя. Каждый пользователь должен иметь возможность использовать именно те интерфейсы, которые ему нужны, т.е. необходимо предоставление различных видов интерфейсов различным типам пользователей. При этом центр тяжести смещается от удовлетворения требований профессиональных программистов к удовлетворению требований конечных пользователей, не имеющих, как правило, профессиональной подготовки в программировании.

Для этих пользователей предоставляются такие интерфейсы, как компоненты диалоговой обработки (например INTERACTIVE APPLICATION FACILITY системы ORACLE), генераторы отчетов, средства работы с таблицами и текстами и другие интерфейсы высокого уровня. Естественной для современной СУБД является интерактивная окружающая среда.

Стандартизированные интерфейсы

Стандартизированные интерфейсы упрощают освоение их пользователями, поскольку основаны на отработанных концепциях, а также достаточно известны и распространены. Кроме того, применение стандартизированных интерфейсов упрощает сравнение производительности различных СУБД, а возможные отклонения быстро обнаруживаются. Для систем с сетевой моделью данных рекомендуется применять международный стандарт ISO, который поддерживается CODASYL-BBTG. Во внутренней системе INTERBAS также исполъзует языковые средства, поддерживающие соответствующий стандарт.

Язык SQL является стандартом ISO. При этом следует обратить внимание на то, что известные диалоговые компоненты (QBE фирмы IBM, IAF системы ORACLE) также строятся на интерфейсе SQL и определяются этой идеологией.

Документируемость

Образно говоря, программное обеспечение не может быть лучше своей документации. Возможности, которые не описаны в документации или описаны плохо, не могут быть выявлены и достаточно хорошо поняты. Они могут быть освоены со значительными затратами времени и ресурсов.

Документацию следует создавать с учетом наличия различных типов пользователей и реализации конкретных целей и задач.

С точки зрения последнего аспекта для одной и той же предметной области необходимо создавать средства обучения, справочники и обобщенные схемы.

Необходима такая документация, с помощью которой для решения одного вопроса было достаточно просмотреть не более двух документов, хотя документация, свободная от избыточности, удобна для ее изготовителя, но не для пользователя.

Эффективность

Чем больше объем базы данных и чем в большем числе приложений она используется, тем важнее становится эффективность системы, которая явно проявляется во времени ожидания ответа. СУБД, с одной стороны, должна поддерживать эффективные решения (например, оптимизация при компиляции, оптимизация путей доступа, структур хранения и др.); с другой стороны, в ней должен быть предусмотрен механизм обнаружения узких мест (ведение и анализ статистики) и возможность настройки (TUNING)

Независимость

Независимость программ от данных имеет два аспекта. С одной стороны, отдельные приложения, работающие с общей базой данных, должны быть изолированы, чтобы не мешать друг другу. Этого добиваются реализацией концепции подсхем или взглядов (VIEWS). Даже в случае совместного использования базы данных у каждого пользователя должно создаваться впечатление, что он один использует базу данных и что эта база является его собственной.

С другой стороны, изменения, производимые на внутреннем уровне (такие, например, как изменения структур данных или путей доступа, изменение или удаление последних), не должны влиять на работоспособность программ. В соответствующем случае может потребоваться повторная компиляция.

Марка изготовителя

При решении вопроса о возможном применении той или иной СУБД основное значение придается ее сопровождению и развитию в течение всего жизненного цикла. Это объясняется большим значением таких систем как для отдельных пользователей, так и для всего народного хозяйства. Жизненный цикл СУБД DBS/R к на стоящему времени составляет уже 12 лет, хотя продолжительность сопровождения и развития СУБД может достигать и 15 лет. В течение всего этого времени надо добиваться непрерывности развития системы, т.е. она должна постоянно адаптироваться к новым научно-техническим требованиям путем создания новых, максимально совместимых между собой версий. Пользователь ждет от изготовителя обслуживания, включающего в себя и обучение, и консультации. Пользователь должен быть уверен, что он в любое время сможет поднять телефонную трубку и найти компетентного партнера, а возникшие ошибки будут устранены в самое короткое время.

Адаптируемость

Эффективность универсильных СУБД, которые могут быть использованы с различными операционными системами и в различных применениях, вызывает недоверие по сравнению с эффективностью и удобством систем, ориентированных на одну операционную систему и определенный класс применений (например СУБД, поддерживающие сетевые модели данных, или реляционные СУБД).

Переносим ость

Переносимая СУБД может функционировать под управлением многих операционных систем на разных типах ЭВМ с максимально согласованными интерфейсами. Это дает существенные преимущества с точки зрения затрат на освоение, а также на перенос данных и программ. Следует отметить, что в настоящее время у пользователей, как правило , имеются различные типы ЭВМ: 8-битные и 16-битные персональные ЭВМ, 16-битные и 32-битные мини-ЭВМ, 32-битные супермини-ЭВМ. При этом тенденция к увеличению разнообразия машин постоянно возрастает. Для конечных пользователей, которые, собственно, и определяют выбор той или иной СУБД, особенно важно, чтобы интерфейсы СУБД с различными операционными системами на разных типах ЭВМ были максимально согласованы (для избежания повторной привязки). Именно это и обеспечивает такое качество СУБД, как переносимость. Учет отклонений переносимой СУБД для различных операционных систем ведется администратором базы данных при переносе. Высокая степень совместимости переносимой СУБД для разных типов ЭВМ позволяет разработчикам прикладных систем эффективно решать вопросы переноса программ и данных между базами данных, поддерживаемыми на разных тинах ЭВМ. При этом прежде всего необходимо обеспечить перенос данных, извлеченных из одной базы данных в другую. Переносу программ можно придавать меньшее значение, так как при использовании прикладные программы распределяются между ЭВМ в соответствии с их производительностью.

Способность к компоновке

Противоречие между универсальностью СУБД и эффективностью в конкретном применении можно разрешить только тем, что пользователь, анализируя универсальные возможности, составляет свою, "сшитую по индивидуальному заказу", СУБД. Из компонент (процессоров), которые используются альтернативно, и из тех, которые совместно расширяют производительность, можно сформировать целевую СУБД, которая наиболее соответствует требованиям производительности и эффективности в конкретном применении. Эти компоненты могут являться минимальными составляющими, пригодными для продажи. Кроме того, для конкретного приме нения в каждой компоненте можно выбрать альтернативные алгоритмы, что обеспечивает способность к генерации "целевой" СУБД.

Надежность

К СУБД предъявляется требование: не допускать ошибок, или, если этого не избежать, обеспечивать возможность их устранения.

Физическая целостность

Обеспечение физической целостности заключается в поддержке сохранности структур хранимой информации и путей доступа в случае сбоев и отказа технических средств и наличия ошибок в программном обеспечении. Эти функции выполняет система контроля и обработки ошибок. В случае обнаружения ошибки восстановление базы данных происходит автоматически или через службу администратора. Может использоваться и специальный пакет вспомогательных программ, с помощью которого анализируются структуры хранения и пути доступа для автоматического обнаружения и устранения невыявленных ошибок.

Семантическая целостность

Инструментарий для поддержки семантической целостности обеспечивает соблюдение условий и ограничений заданной предметной области. Эти условия формулируются на специальном языке в рамках используемой модели данных. Кроме того, для обеспечения семантической целостности можно использовать концепцию транзакций.

Операционная целостность обеспечивает поддержку корректного завершения конкурирующих операций. При этом невозможны хранение и обработка промежуточных данных и результатов до завершения транзакций. Для этого предназначены алгоритмы обработки тупиков (DEADLOCK), управления транзакциями и др.

Защита доступа должна предотвращать несанкционированный доступ к банку данных, независимо от того, был этот доступ преднамеренным или нет. При входе в СУБД пользователь регистрируется, задавая свой идентификатор. Он доказывает свою правомочность, подтверждая право на доступ, сообщая свой пароль или используя более эффективные средства. Пользователей следует классифицировать по их полномочиям. Кроме того, СУБД должно быть известно соответствие между пользователем и разрешенными для него объектами базы данных и программами. Система должна постоянно контролировать это соответствие. При необходимости возможно шифрование данных и протоколирование попыток нарушения защиты доступа.

Технология

Такой сложный программный продукт, как СУБД, можно разрабатывать только на базе развитой технологии и только при наличии соответствующего инструментария.

На протяжении всего цикла разработки программ (анализ, спецификация, проектирование, реализация и верификация) должно осуществляться документирование управления проектом, запись применяемых решений, а с момента внедрения - регистрация всех измерений и оценка проекта и системы.

Документирование и управление

Разработка INTERBAS подтвердила большое значение детализированной документации на всех этапах разработки, возможность управления проектом с помощью ЭВМ, важность выделения и поддержки всех фаз проектирования программ. Оказалось, что необходимо не только уметь представлять проектные решения, но и четко обосновывать причины, по которым они были приняты.

Отклонения от проектных решений и спецификаций, возникающие на этапе реализации, необходимо устранять путем корректировки соответствующих проектных документов. Это требование естественно, но трудновыполнимо из-за отсутствия времени на стадии реализации.

Измерение и оценка

Опыт разработки DBS/R, как и опыт других разработчиков СУБД, показывает, что как бы тщательно ни проводилось проектирование, достаточной эффективности и надежности системы можно достигнуть только после ее длительных испытаний и проверок в различных условиях. Поэтому целесообразно начать систематическое измерение и оценку параметров уже на фазе проверки и верификации .

Для проверки и верификации, а также для измерения и оценки характеристик целесообразно создать коллектив, организационно независимый от разработчиков, чтобы преодолеть слепоту по отношению к собственным ошибкам и предрассудкам.

Переносимость достигается путем использования языка программирования более высокого уровня, доступного для всех целевых ЭВМ: разработчикам удалось достичь оправданного оптимума, используя современный уровень знаний и опыт, накопленный при работе с другими системами, в условиях определенных ограничений в ресурсах и во времени.



http://swsys.ru/index.php?id=1408&lang=.&page=article


Perhaps, you might be interested in the following articles of similar topics: