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