Анализ предметной области: сущности и свойства

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

Регламент пары: 80 минут (сокращенно 60 минут) • Оценивание: 4 балла (.rubrika.md)

Вариант 1. Автопарк логистической компании

Описание предметной области:
Транспортная компания управляет парком грузовых автомобилей. Каждый Автомобиль имеет уникальный заводской номер кузова (VIN-код, 17 символов), государственный регистрационный номер, марку и модель, год выпуска и грузоподъемность в тоннах. Для ускорения внутренних связей в учетной системе компании каждому ТС также присваивается целочисленный инвентарный код (ID_авто). В штате компании состоят Водители, для каждого из которых фиксируются табельный номер, ФИО (Фамилия, Имя, Отчество), номер водительского удостоверения и список открытых водительских категорий (B, C, CE). Выход в рейс оформляется документом Путевой лист, содержащим номер документа, дату выезда, показания одометра при выезде, показания одометра при возвращении и итоговый пробег за смену.
Задание 1 Спецификация сущностей (до 2 баллов)
Выделите 3 профильные сущности предметной области (Автомобиль, Водитель, Путевой лист) и приведите по одному конкретному примеру экземпляра для каждой.
Задание 2 Классификация атрибутов и домены (1 балл)
1) Укажите составной атрибут водителя и напишите его компоненты.
2) Укажите многозначный атрибут водителя и объясните, как его реализовать в реляционной БД.
3) Найдите производный атрибут в путевом листе и приведите формулу его расчета.
4) Задайте домен для атрибута «Грузоподъемность» (тип, диапазон).
Задание 3 Обоснование первичного ключа (1 балл)
Сравните естественный ключ (VIN-код) и суррогатный ключ (ID_авто) для сущности «Автомобиль». Какой из них целесообразно назначить Primary Key, а какой — Unique? Приведите не менее двух инженерных аргументов (размер в байтах, скорость соединений JOIN, риск опечаток при вводе).

Вариант 2. Гостиничный комплекс

Описание предметной области:
Гостиничный комплекс ведет учет номерного фонда и проживания постояльцев. Номер характеризуется уникальным номером комнаты на двери (например, «301-А»), этажом, категорией комфорта (допустимые значения: «Эконом», «Стандарт», «Комфорт», «Люкс», «Апартаменты») и базовым суточным тарифом в рублях. О каждом Госте регистрируются паспортные данные (серия, номер, кем и когда выдан), полное имя (ФИО), дата рождения и контактный мобильный телефон. Факт проживания фиксируется сущностью Бронирование, содержащей дату заезда, запланированную дату выезда, фактически проведенное количество дней и рассчитанную итоговую стоимость проживания.
Задание 1 Спецификация сущностей (до 2 баллов)
Опишите сущности «Номер», «Гость» и «Бронирование». Укажите семантическую разницу между описанием сущности «Номер» и конкретным проживанием гостя.
Задание 2 Классификация атрибутов и домены (1 балл)
1) Определите производный атрибут «Стоимость_проживания». Напишите математическую формулу его расчета через количество дней и тариф номера.
2) Почему физическое хранение вычисляемой стоимости в таблице может привести к ошибкам согласованности при изменении дат проживания?
3) Специфицируйте домен атрибута «Категория» номера (перечисление допустимых значений ENUM).
Задание 3 Обоснование первичного ключа (1 балл)
Для сущности «Гость» проанализируйте паспортные данные (серия + номер) как естественный потенциальный ключ. Почему во внутренних связях БД надежнее использовать суррогатный числовой ID_гостя? (Укажите конфиденциальность ПДн, объем составного ключа и каскадные обновления при смене паспорта).

Вариант 3. Библиотечная система

Описание предметной области:
Библиотечный фонд организует каталог изданий и обслуживание читателей. Книга (Издание) описывается международным кодом ISBN (13 или 17 символов), названием произведения, годом публикации, издательством и списком авторов (у одной книги может быть несколько соавторов). На полках библиотеки хранится множество физических копий одного и того же издания — сущность Экземпляр книги. Каждый экземпляр имеет уникальный наклеенный инвентарный номер со штрихкодом, шифр расстановки на стеллаже и отметку текущего физического состояния («Отличное», «Хорошее», «Ветхое»). Сущность Читатель содержит номер электронного читательского билета, ФИО и дату регистрации.
Задание 1 Спецификация сущностей (до 2 баллов)
Разграничьте абстрактную сущность «Книга» (библиографическое описание) и материальную сущность «Экземпляр» (физическая книга на полке). Почему нельзя объединить их в одну таблицу?
Задание 2 Классификация атрибутов и домены (1 балл)
1) К какому типу атрибутов относится «Список авторов» книги? Почему хранение соавторов через запятую в одной ячейке («Иванов, Петров, Сидоров») разрушает реляционную целостность (1НФ)?
2) Задайте домен атрибута «Год_издания» (тип данных, допустимый диапазон лет от возникновения книгопечатания до текущего года).
Задание 3 Обоснование первичного ключа (1 балл)
Сравните естественный ключ ISBN и суррогатный «Инвентарный номер». Почему ISBN не может служить первичным ключом для физической книги на библиотечной полке? Какой ключ должен быть назначен Primary Key в таблице экземпляров?

Вариант 4. Сервисный центр по ремонту техники

Описание предметной области:
Сервисный центр производит диагностику и гарантийный ремонт цифровой техники. При обращении формируется Заказ: фиксируются уникальный порядковый номер квитанции, дата и время приема, дата фактической выдачи, заявленная клиентом неисправность и текущий статус заказа («Принят», «Диагностика», «Ожидание деталей», «В работе», «Готов», «Выдан»). Клиент идентифицируется контактным номером мобильного телефона и ФИО. Ремонт осуществляет назначенный Мастер (табельный номер, ФИО, квалификационный разряд). На складе хранятся Запчасти (артикул производителя, наименование, закупочная цена, текущий остаток на складе в штуках).
Задание 1 Спецификация сущностей (до 2 баллов)
Выделите 4 основные сущности (Заказ, Клиент, Мастер, Запчасть). Для каждой сущности приведите пример одного реального экземпляра с набором значений.
Задание 2 Классификация атрибутов и домены (1 балл)
1) Специфицируйте домен атрибута «Статус заказа»: перечислите все допустимые дискретные состояния (ENUM).
2) Сформулируйте доменное ограничение целостности для дат: какое логическое правило связывает «Дату приема» и «Дату выдачи» заказа (условие CHECK)?
3) Задайте домен атрибута «Остаток на складе» (тип данных, условие неотрицательности).
Задание 3 Обоснование первичного ключа (1 балл)
Для сущности «Заказ» обоснуйте использование суррогатного числового идентификатора (Номер_заказа INT AUTO_INCREMENT). Почему комбинация (Телефон клиента + Дата приема) не является надежным первичным ключом?
Данные сохранены локально