В ходе выполнения курсовой работы была поставлена цель — исследовать методы проектирования баз данных, разработать концептуальную, логическую и физическую модели, реализовать базу данных в среде Microsoft SQL Server, создать серверное приложение, включающее процедуры, функции и триггеры, а также выполнить комплекс мероприятий по администрированию базы данных. Данная цель была достигнута, что подтверждается выполнением всех сформулированных во введении задач.
На первом этапе был проведён анализ предметной области, позволивший определить основные объекты, их характеристики и связи, а также информационные потоки, требующие автоматизации. Результатом анализа стало формирование структуры сущностей и атрибутов, что создало основу для построения инфологической модели. Концептуальное проектирование позволило представить систему в виде набора сущностей, их атрибутов и взаимоотношений, что обеспечило целостное понимание предметной области и подготовило базу для перехода к логическому проектированию.
Логическая модель была получена путём отображения инфологической структуры на реляционную форму. Таблицы и связи были приведены к нормальным формам, что позволило устранить избыточность и минимизировать потенциальные аномалии операций обновления, удаления и вставки. В результате была сформирована реляционная модель, пригодная для реализации в выбранной СУБД. Физическое проектирование позволило учесть особенности хранения данных, ограничения целостности, индексацию и нагрузки, что обеспечило эффективную работу базы данных на практике.
Вторая часть работы была посвящена непосредственной реализации разработанной модели в Microsoft SQL Server. Была создана структура базы данных, настроены ключи и ограничения, а также разработан набор SQL-запросов, включающий запросы различных уровней сложности: простые выборки, запросы с группировкой, агрегатными функциями, вычисляемыми полями, соединениями таблиц, а также операции изменения данных (INSERT, UPDATE, DELETE). Кроме того, были созданы индексы различного типа, что позволило оптимизировать выполнение наиболее ресурсоёмких запросов и повысить производительность системы. В рамках анализа было установлено, что по мере роста объёма данных наиболее чувствительными оказываются запросы с множественными соединениями и сортировками; их выполнение требует вдумчивого подхода к построению индексов и периодической оптимизации выполнения.
Третья часть курсовой работы была направлена на разработку серверного приложения. В базе данных были созданы хранимые процедуры, в том числе использующие механизм транзакций для обеспечения атомарности и надёжности выполнения операций. Реализованные процедуры позволили автоматизировать ключевые бизнес-операции предметной области, уменьшить дублирование кода и повысить безопасность обработки данных. Созданные триггеры обеспечили автоматический контроль целостности и реализацию дополнительных действий при изменении данных. Пользовательская функция позволила инкапсулировать часто повторяющуюся логику обработки значений и сделать запросы более удобными для анализа. Проведённый анализ показал, что при дальнейшем расширении системы возможно перенесение части серверной логики на клиентский уровень — например, тех процедур, которые выполняют подготовительные вычисления и не требуют обращения к данным в нескольких таблицах. Такая перераспределённость позволит снизить нагрузку на сервер и повысить масштабируемость приложения.
В четвёртой части были рассмотрены вопросы администрирования базы данных. Созданы пользовательские роли, определяющие уровни доступа различных категорий пользователей. Настроена авторизация в SQL Server, что гарантирует безопасное управление ресурсами базы данных. Выбрана модель восстановления базы данных и разработана стратегия резервного копирования, обеспечивающая защиту информации при возникновении сбоев и ошибок. Дополнительно была настроена безопасность SQL Server Agent, что повысило надёжность автоматизированных задач обслуживания. Проведён анализ применяемых административных настроек, показавший, что выбранная стратегия резервного копирования позволяет обеспечить приемлемое время восстановления и минимизацию потери данных. При увеличении объёмов таблиц потребуется масштабирование частоты резервного копирования транзакционного журнала и оптимизация некоторых административных заданий.
Обобщая результаты, можно сделать вывод, что выполненная работа имеет практическую ценность и демонстрирует полный цикл разработки базы данных — от анализа предметной области до реализации серверной логики и выполнения административных действий. Все поставленные задачи выполнены последовательно и в полном объёме. Вместе с тем существуют направления для дальнейшего развития проекта: расширение набора хранимых процедур, введение дополнительных проверок в триггерах, реализация продвинутых механизмов аудита изменений, использование механизмов репликации и кластеризации для обеспечения высокой доступности системы. Кроме того, при дальнейшем увеличении числа пользователей и объёмов данных потребуется углублённая оптимизация архитектуры БД, адаптация индексов и пересмотр отдельных SQL-запросов для повышения эффективности работы.
Таким образом, курсовая работа позволила получить комплексные знания и навыки проектирования, реализации и администрирования баз данных, а также продемонстрировала практическую значимость изученных методов и технологий.
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ
Абрамова, М. В. Базы данных. Проектирование, реализация и сопровождение : учеб. пособие / М. В. Абрамова, Н. А. Соловьёва. — Москва : Форум, 2018. — 368 с.
Головач, А. К. Проектирование баз данных : учебник для вузов / А. К. Головач. — Санкт-Петербург : Питер, 2020. — 512 с.
Дейт, К. Дж. Введение в системы баз данных : пер. с англ. / К. Дж. Дейт. — 8-е изд. — Москва : Вильямс, 2011. — 1056 с.
Коннолли, Т. Проектирование баз данных / Т. Коннолли, К. Бегг ; пер. с англ. — 5-е изд. — Москва : Вильямс, 2016. — 1440 с.
Силберштац, А. Базы данных. Основы / А. Силберштац, Х. Корн ; пер. с англ. — Москва : Вильямс, 2015. — 1360 с.
Григорьев, В. А. Microsoft SQL Server. Основы администрирования : учеб. пособие / В. А. Григорьев. — Москва : БХВ-Петербург, 2019. — 432 с.
Халилов, Т. Р. SQL в примерах и задачах : учеб. пособие / Т. Р. Халилов. — Санкт-Петербург : Лань, 2021. — 288 с.
Microsoft SQL Server. Документация [Электронный ресурс]. — URL: https://learn.microsoft.com/sql/ (дата обращения: 01.02.2025).
ГОСТ Р 7.0.5-2008. Библиографическая ссылка. Общие требования и правила составления. — Москва : Стандартинформ, 2009. — 12 с.
ГОСТ 7.1-2003. Библиографическая запись. Библиографическое описание. Общие требования и правила составления. — Москва : Изд-во стандартов, 2004. — 24 с.
ГОСТ 7.32-2001. Отчёт о научно-исследовательской работе. Структура и правила оформления : в ред. изм. № 1 от 01.12.2005, ИУС № 12, 2005. — Москва : Госстандарт России, 2005. — 18 с.
Coronel, C., Morris, S. Database Systems: Design, Implementation, & Management. — 13th ed. — Boston : Cengage Learning, 2019. — 976 p.
Rob, P., Coronel, C. Database Systems: Design and Application Development. — Boston : Course Technology, 2007. — 752 p.
Date, C. J. Database Design and Relational Theory. — Sebastopol : O’Reilly Media, 2019. — 440 p.