Федеральное государственное бюджетное образовательное учреждение высшего образования «Национальный исследовательский университет «МЭИ»
Кафедра ВМСС
Отчет по преддипломной практике
на тему: Проектирование базы данных для программы отбора и оценки научных журналов
Выполнил:
Зыльков П.А.
Группа: А-08-16
Проверила:
Аляева Ю.В.
Москва, 2020
1. Постановка задачи
1.1 Описание предметной области
Существует разная вариация направлений разработки приложений, и зачастую появляется необходимость в доступе к большим объемам данных. Хранение такого количества данных в самом приложении влечет за собой резкое увеличение его размера и возможное замедление его работы. В то же время появляются трудности с корректным функционированием программы на физических носителях: база логический листинг программа
· Обновление функционала будетзанимать большое количество времени;
· Изменение структуры данных будет требовать изменения самого приложения.
В этом случае эти данные стоит хранить в базе данных. Тогда все эти данные не будут дублироваться в полном объеме в приложении и занимать в нем место, напротив, отображаться будут только необходимые данные, в то время, как полный объем будет храниться удаленно.
На сегодняшний день существует несколько основных видов баз данных:
Иерархическая
В этом случае данные предоставляются в виде сущностей, взаимосвязанных друг с другом. Эти сущности могут иметь как дочерние элементы, так и родительский элемент, и изменение данных в родительском объекте может повлечь изменения в дочернем, в то время как операции над дочерними не влияют на целостность таблицы-родителя.
Реляционная
Наиболее распространенный и популярный вид баз данных. Их особенностью является хранение данных в двумерных таблицах с фиксированным числом атрибутов. То есть таблица состоит из столбцов, в которых может храниться различная информация разных типов. Обработка такой базы данных осуществляется с помощью СУБД - Системы Управления Базами Данных, которая поддерживает общепринятый язык структурированных запросов SQL.
Сетевая
По сути, является модификацией иерархических баз данных. В этом случае у дочерних сущностей может быть несколько родителей, то есть элементов, стоящих выше по иерархии и от которых у дочерних существует зависимость. Представляются в виде общего графа.
1.2 Анализ предметной области
Рисунок 1 - Состав программы отбора и оценки научных журналов
Конечная программа работает со списком журналов, для которых необходимо задать первичную информацию: рейтинги по различным шкалам, количество диссертационных советов и научных специальностей. Эти данные хранятся в соответствующих таблицах базы данных под управлением СУБД MySQL.Состав основной программы представлен на Рисунке 1.
Для связи таблиц журналов и рейтингов используется уникальный номер периодического издания -ISSN(Рисунок 2). Рейтинги научных журналов могут быть получены из разных источников, поэтому их необходимо преобразовать в формализованный формат, пригодный для загрузки в базу данных.
На основании загруженных показателей рейтингов по заданному алгоритму формируются интегральные показатели рейтингов научных журналов, на основании которых в соответствии с заданными критериями производится отбор необходимого перечня периодических изданий.
Рисунок 2 - Формат международного стандартного серийного номера
1.3 Вид приложения, среда разработки
Конечная программа является программой для ОСWindows. Разрабатывается программа в среде PyCharmи QtDesigner. Средой для разработки самой БД была выбрана MySQLWorkbenchкак самая распространенная и функциональная [3].
С помощью MySQLWorkbench разработка базы данных становится удобней, т.к. она дает возможность добавлять сущности, таблицы, индексы и изменять типы и количество столбцов в таблице не прибегая к написанию команд на языке SQL.
2. Проектирование базы данных
2.1 Проектирование концептуальной модели БД
Проектирование концептуальной модели является основной задачей при создании БД. Цель концептуальной модели- обеспечение наиболее естественных для человека способов сбора и представления той или иной информации, которую предполагается хранить в создаваемой базе. Поэтому данную модель данных пытаются строить по аналогии с естественным языком. Основными конструктивными элементамиконцептуальных моделей являются сущности, связи между ними и их свойства.[1]
Рисунок 3 - Декомпозиция состава программы отбора и оценки научных журналов
Поэтому необходимо четко поставить цель данной БД, а также установить, какую информацию получает пользователь в результате работы с программой. Для более наглядного понимания работы итоговой программы и разработки базы данных, была составлена декомпозиция состава программы, представленная на Рисунке 3. По данной декомпозиции легко определяются сущности и атрибуты необходимой базы данных.
2.2 Проектирование логической модели БД
Проектирование логической модели- важный этап в проектировании БД. На этом этапе важно правильно выделить сущности и описать их атрибуты. [1]
Рисунок 4 - Логическая модель данных
Логическая модель представляет собой модель базы данных, которая не привязана к конкретной СУБД. В ней выделяют основные объекты БД и определяют связи между этими объектами. Иногда определятся типы данных отдельных объектов. Данная модель построена методом Сущность-связь.(Рисунок 4) На основании декомпозиции предметной области создадим список ее сущностей (таблиц) и атрибутов (полей).
Таблица 1 - Список сущностей предметной области
|
№ |
Сущность |
Описание |
|
|
1 |
Список журналов |
Хранит список названий журналов и их уникальных идентификаторов |
|
|
2 |
Список рейтингов |
Хранит список рейтингов с привязкой к уникальным идентификаторам журналов |
|
|
3 |
Список критериев отбора |
Хранит список критериев, которые используются для отбора научных журналов |
|
|
4 |
Список интегральных показателей |
Хранит список рассчитанных интегральных показателей с привязкой к уникальным идентификаторам журналов |
|
|
5 |
Список специальностей |
Хранит список специальностей, для которых заявлен научный журнал |
2.3 Нормализация
Метод нормальных форм (НФ) состоит в сборе информации о объектах решения задачи в рамках одного отношения и последующей декомпозиции этого отношения на несколько взаимосвязанных отношений на основе процедур нормализации отношений.
Цель нормализации: исключить избыточное дублирование данных, которое является причиной аномалий, возникших при добавлении, редактировании и удалении кортежей(строк таблицы).[1]
Отношение находится в первой нормальной форме (далее - 1НФ), если все его атрибуты являются простыми, все используемые домены должны содержать только скалярные значения. Не должно быть повторений строк в таблице.
Таблица 2 - Атрибуты предметной области
|
№ |
Атрибут |
Описание |
|
|
1 |
Название журнала |
Название периодического издания |
|
|
2 |
ISSN журнала |
Уникальный международный стандартный серийный номер |
|
|
3 |
Дата издания |
Дата выхода журнала |
|
|
4 |
Номер журнала |
Порядковый номер журнала |
|
|
5 |
Наименование рейтинга |
Название рейтинга |
|
|
6 |
Значение рейтинга |
Численное значение рейтинга |
|
|
7 |
Наименование критерия отбора |
Критерий для отбора журнала |
|
|
8 |
Наименование специальности |
Специальности, для которых заявлен научный журнал |
|
|
9 |
Интегральный показатель |
Рассчитанный на базе рейтинга показатель |
|
|
10 |
Минимальное значение |
Минимальное значение |
|
|
11 |
Максимальное значение |
Максимальное значение |
|
|
12 |
Направленность |
Порядок сортировки лучших показателей |
|
|
13 |
Год рейтинга |
Год рейтинга |
Нарушение нормализации 1НФ происходит в строках«Наименование специальности» и «Наименование критерия отбора», т.к. в одной ячейке может содержаться список из нескольких элементов, т.е. он не является атомарным.
Первая нормальная форма
Преобразуем таблицу к 1НФ, для этого выделим отдельно сущности «Наименование специальности» и «Наименование критерия отбора».
Таблица 3 - Атрибуты предметной области
|
№ |
Атрибут |
Описание |
|
|
1 |
Название журнала |
Название периодического издания |
|
|
2 |
ISSN журнала |
Уникальный международный стандартный серийный номер |
|
|
3 |
Дата издания |
Дата выхода журнала |
|
|
4 |
Номер журнала |
Порядковый номер журнала |
|
|
5 |
Наименование рейтинга |
Название рейтинга |
|
|
6 |
Значение рейтинга |
Численное значение рейтинга |
|
|
7 |
Интегральный показатель |
Рассчитанный на базе рейтинга показатель |
|
|
8 |
Минимальное значение |
Минимальное значение |
|
|
9 |
Максимальное значение |
Максимальное значение |
|
|
10 |
Направленность |
Порядок сортировки лучших показателей |
|
|
11 |
Год рейтинга |
Год рейтинга |
В «Список критериев отбора» (Таблица 4) входят количество научных изданий (журналов), входящих в Перечень ВАК, количество диссертационных советов (ДС), в которых можно защищаться по указанной НС, само количество защит по специальности и показателя избыточности научных изданий.
Таблица 4 - Атрибуты сущности «Список критериев отбора»
|
Сущность |
Атрибут |
Описание |
|
|
Список критериев отбора |
Код списка |
Уникальный идентификатор в базе данных |
|
|
Наименование списка |
Название списка |
||
|
Минимальное значение |
Минимальное значение |
||
|
Максимальное значение |
Максимальное значение |
||
|
Направленность |
Порядок сортировки лучших показателей |
В «Список специальностей» (Таблица 5) входят специальности, по которым проводятся защиты диссертаций и входящие в классификатор ОК 009-2016.
Таблица 5 - Атрибуты сущности «Список специальностей»
|
Сущность |
Атрибут |
Описание |
|
|
Список специальностей |
Код специальности |
Уникальный идентификатор в базе данных |
|
|
Шифр специальности |
Шифр специальности по «ОК 009-2016» |
||
|
Название специальности |
Название специальности |
Вторая нормальная форма
Отношение находится во 2НФ, если оно находится в 1НФ и каждый не ключевой атрибут неприводимо зависит от Первичного Ключа (далее - ПК).[1]
Неприводимость означает, что в составе потенциального ключа отсутствует меньшее подмножество атрибутов, от которого можно также вывести данную функциональную зависимость.
Таблица 3находится в первой нормальной форме, но не во второй. Значение рейтинга и интегрального показателя зависят от ISSNжурнала. Наименование рейтинга зависят от названия журнала, то есть зависимость от первичного ключа неполная. Исправляется это путем декомпозиции на два отношения, в которых не ключевые атрибуты зависят от первичного ключа.
В «Список журналов» (Таблица 6)входят названия и код научных журналов из Перечня ВАК.
Таблица 6 - Атрибуты сущности «Список журналов»
|
Сущность |
Атрибут |
Описание |
|
|
Список журналов |
Код журнала |
Уникальный идентификатор в базе данных |
|
|
ISSN |
Уникальный международный стандартный серийный номер |
||
|
Название журнала |
Название журнала |
||
|
Дата издания |
Год и месяц издания журнала |
||
|
Номер журнала |
Порядковый номер издания |
В «Список рейтингов» (Таблица 7) входят: место в общем рейтинге SCIENCE INDEX за определенный год, двухлетний импакт-фактор РИНЦ, двухлетний импакт-фактор по ядру РИНЦ, число цитирований статей предыдущих двух лет, пятилетний импакт-фактор РИНЦ, пятилетний импакт-фактор по ядру РИНЦ, число цитирований статей предыдущих 5 лет, пятилетний индекс Херфиндаля по цитирующим журнала, десятилетний индекс Хирша