- •Раздел «Базы данных» (15-45)
- •Раздел «Информационные системы»(46-60)
- •Раздел 2. Операционные системы, среды и оболочки
- •Вопросы к экзамену
- •Раздел 8. Управление информацией и ресурсами знаний в социальной сфере
- •Вопросы к экзамену
- •Раздел 9. Управление проектами информационных систем
- •Вопросы к экзамену
- •Раздел 10. Социальное проектирование и прогнозирование
- •Вопросы к экзамену
- •Типология бд: фактографические, документальные, мультимедийные; бд оперативной и ретроспективной информации. Соотношение основных требований и свойств субд: система компромиссов.
- •1. Иерархическая модель данных.
- •1. Иерархическая модель данных.
- •Декартово произведение
- •Соединение
- •Первая нормальная форма
- •Вторая нормальная форма
- •Концептуальное (инфологическое) проектирование [править]
- •Логическое (даталогическое) проектирование [править]
- •Физическое проектирование [править]
- •Инфологическое проектирование бд. Основные компоненты концептуальной модели. Преимущества использования er-моделирования. Краткая характеристика er-модели.
- •Раздел «Информационные системы»(46-61)
- •Обеспечение управления
- •Обеспечение бизнес-процессов
- •Модель сущность-связь.
- •Информационные системы как основа автоматизированных систем управления (асу). Состав асу. Основные квалификационные признаки асу. Функции асу. Виды асу. Классы структура асу.
- •Корпоративные информационные системы (кис). Общая характеристика кис. Классификация кис. Краткая характеристика модулей кис.
- •Понятие и основные характеристики программного модуля, критерии приемлемости выделенного модуля. Размер, прочность, рутинность, сцепление модуля
- •Основные характеристики программного модуля.
- •Динамические структуры данных линейные списки стеки очереди бинарные деревья
- •Основные понятия ооп: объект. Класс инкапсуляция. Наследование. Полиморфизм, абстрагирование устойчивость
- •1. Инкапсуляция
- •2. Полиморфизм
- •3. Наследовние
- •Объекты, определение, типы абстракций, используемые при построении объекта, категории объектов, интерфейс объекта.
- •Понятие класса. Управляющие предметные интерфейсные контейнерные классы. Методы классов конструктор, деструктор, аксессор, мутатор. Перегрузка классов и методов.
- •Определение термина «инкапсуляция» в языках объектно-ориентированной парадигмы программирования. Модульность. Примеры инкапсуляции.
- •Понятие события в объектно-ориентированной парадигме программирования: природа событий, виды событий, маршрутизация событий. Модификация и обработка событий. Реакция на события.
- •Обеспечение управления
- •Обеспечение бизнес-процессов
- •1 Этап. Разработка и анализ бизнес-модели
- •2 Этап. Формализация бизнес-модели. Разработка логической модели бизнес-процессов.
- •3 Этап. Выбор лингвистического обеспечения. Разработка по.
- •4 Этап. Тестирование и отладка аис.
- •5 Этап. Эксплуатация и контроль версии.
- •Жизненный цикл программного обеспечения. Понятие «жизненного цикла» ис. Модели жц ис. Стандарты, описывающие жц ис. Краткая характеристика основных процессов жц ис по стандарту (iso/iec 12207).
- •Каноническое проектирование информационных систем (ис). Определение, стадии канонического проектирования ис и их характеристика. Модель «как есть» (“as-is”). Модель «как должно быть» (“to-be”).
- •Техническое задание (тз) на разработку информационной системы. Состав и содержание технического задания (гост 34.603-89).
- •Состав и содержание технического задания (гост 34.602- 89)
- •Достоинства и недостатки тпр
- •Старшая (Precedence)
- •Потоки объектов (Object Flow)
- •Отношения (Relational Link)
- •Внутримашинное ио. Проектирование экранных форм электронных документов. Информационная база (иб) и способы ее организации.
- •Диаграмма классов (для 123. Рисовать без надписей на стрелках)
- •Диаграммах прецедентов
- •Диаграмма последовательности обработки заказа (вопр 123)
- •Кооперативная диаграмма прохождения заказа(вопр 123)
- •Физические основы вычислительных процессов. Основы построения и функционирования вычислительных машин, систем, сетей и телекоммуникаций.
- •Общие принципы построения и архитектуры вычислительных систем, сетей и телекоммуникаций. История возникновения компьютерных сетей (кс) и Интернета
- •Информационно-логические основы вычислительных систем, их функциональная и структурная организация.
- •Каналы и линии связи. Двухточечная схема передачи данных. Интерфейсы ввода вывода, терминальные устройства и оконечное оборудование кс.
- •Архитектурные особенности и организация функционирования вычислительных параллельных систем. (risc и cisc; sisd, simd, mimd).
- •Мультикомпьютеры и мультипроцессоры - типовые вычислительные структуры и программное обеспечение параллельных вс, режимы их работы.
- •Классификация вычислительных сетей. Топология сетей. Методы доступа к сети. Домашние и заводские компьютерные сети.
- •Информационное и программное обеспечение локальных проводных вс. Технические средства человеко-машинного интерфейса lan-сетей.
- •Структура и организация функционирования сетей - глобальных и региональных, проводных и беспроводных.
- •Структура и характеристики систем телекоммуникаций. Коммутация и маршрутизация.
- •Беспроводные сети – состав и технические устройства; методы доступа; стандарты и версии; программное обеспечение.
- •Цифровые каналы и сети связи, глобальные сетевые технологии. Аппаратура wan-сетей.
- •Стек протоколов Интернета. Протоколы прикладного уровня и сетевые команды.
- •Организация электронной почты. Протоколы. Сетевые команды. Почтовые серверы и клиенты.
- •Организация безопасной работы в локальной сети и Интернете. Протоколы безопасности.
- •Эффективность функционирования вычислительных систем, сетей и средств телекоммуникаций.
- •Перспективы развития вычислительных сетей и телекоммуникационных средств. Сближение локальных и глобальных технологий.
- •Общие сведения об информационных технологиях. Основные принципы, методы и свойства современных информационных технологий, их эффективность.
- •Понятие информационной системы, ее структура и состав. Примеры информационных систем.
- •Понятия компьютерной сети и арм. Классификация вычислительных сетей. Топологии вычислительной сети, преимущества и недостатки каждого типа топологии вычислительной сети.
- •Локальная вычислительная сеть, ее компоненты и особенности. Преимущества работы в локальной сети.
- •4.1. Основные компоненты
- •Рабочие станции
- •Сетевые адаптеры
- •Сетевые операционные системы
- •База данных, система управления базами данных, банк данных и компоненты автоматизированного банка данных. Классификация баз данных. Современные технологии, используемые в работе с данными.
- •Программные системы управления базами данных. Основные функции систем управления базами данных.
- •Основные функции субд
- •2.1.1. Непосредственное управление данными во внешней памяти
- •2.1.2. Управление буферами оперативной памяти
- •2.1.3. Управление транзакциями
- •2.1.4. Журнализация
- •2.1.5. Поддержка языков бд
- •Интегрированная информационная система, ее компоненты, примеры «электронных офисов».
- •Операционные системы и их атрибуты.
- •Прикладные программы.
- •Программы языковой обработки.
- •Компьютерные вирусы и вредоносные программы.
- •Понятия экспертной системы, искусственного интеллекта, интеллектуальной системы. Структура экспертной системы.
- •Структура экспертной системы
- •Базовые принципы построения сети Интернет. Что представляет собой современная структура (компоненты) Интернета? Международная система обмена информацией. Система адресации в Интернет.
- •Принципы защиты информации в Интернете. Характеристики, обеспечивающие безопасность системы.
- •Системы электронного документооборота. Системы поддержки принятия решений. Интеллектуальные системы. Цели их использования, структура
- •Система обработки данных, назначение, основные функции.
- •Автоматизированные рабочие места, основные компоненты.
Вторая нормальная форма
Ясно, что отношение, находящееся в 1НФ, также может обладать избыточностью. Для её устранения предназначена вторая нормальная форма. Но прежде чем приступить к её описанию, сначала следует выявить недостатки первой. Пусть исходное отношение содержит информацию о поставке некоторых товаров и их поставщиках.
Код поставщика |
Город |
Статус города |
Код товара |
Количество |
1 |
Москва |
20 |
1 |
300 |
1 |
Москва |
20 |
2 |
400 |
1 |
Москва |
20 |
3 |
100 |
2 |
Ярославль |
10 |
4 |
200 |
3 |
Ставрополь |
30 |
5 |
300 |
3 |
Ставрополь |
30 |
6 |
400 |
4 |
Псков |
15 |
7 |
100 |
Заранее известно, что в этом отношении содержатся следующие функциональные зависимости: { {Код поставщика, Код товара} -> { Количество}, {Код поставщика} -> {Город}, {Код поставщика} -> {Статус}, {Город} -> {Статус} } Первичный ключ в отношении: {Код поставщика, Код товара}. Очевидно, что отношение обладает избыточностью: оно описывает две сущности — поставку и поставщика. В связи с этим возникают следующие аномалии:
Аномалия вставки. В отношение нельзя добавить информацию о поставщике, который ещё не поставил ни одного товара.
Аномалия удаления. Если от поставщика была только одна поставка, то при удалении информации о ней будет удалена и вся информация о поставщике.
Аномалия обновления. Если необходимо изменить какую-либо информацию о поставщике (например, поставщик переехал в другой город), то придётся изменять значения атрибутов во всех записях о поставках от него.
Физический смысл избыточности исходного отношения заключается в том, что оно описывает не одну сущность, а две —поставку и поставщика. Чтобы устранить эти аномалии, необходимо разбить исходное отношение на проекции:
В первую следует включить первичный ключ и все неключевые атрибуты явно зависимые от него.
В остальные проекции (в данном случае она одна) будут включены неключевые атрибуты, зависящие от первичного ключа неявно, вместе с той частью первичного ключа, от которой эти атрибуты зависят явно.
В итоге будут получены два отношения:
Код поставщика |
Код товара |
Количество |
1 |
1 |
300 |
1 |
2 |
400 |
1 |
3 |
100 |
2 |
4 |
200 |
3 |
5 |
300 |
3 |
6 |
400 |
4 |
7 |
100 |
Первому отношению теперь соответствуют следующие функциональные зависимости: {Код поставщика, Код товара} -> {Количество}
Код поставщика |
Город |
Статус города |
1 |
Москва |
20 |
2 |
Ярославль |
10 |
3 |
Ставрополь |
30 |
4 |
Псков |
15 |
Второму отношению соответствуют: { {Код поставщика} -> {Город}, {Код поставщика} -> {Статус}, {Город} -> {Статус} } Такое разбиение устранило аномалии, описанные выше: можно добавить информацию о поставщике, который ещё не поставлял товар, удалить информацию о поставке без удаления информации о поставщике, а также легко обновить информацию в случае если поставщик переехал в другой город. Теперь можно сформулировать определение второй нормальной формы, до которого, скорее всего, читатель уже смог догадаться самостоятельно: отношение находится во второй нормальной форме (сокращённо 2НФ) тогда и только тогда, когда оно находится в первой нормальной форме и каждый его неключевой атрибут неприводимо зависим от первичного ключа.
Переменная отношения R находится в 3NF тогда и только тогда, когда выполняются следующие условия:
R находится во второй нормальной форме.
ни один неключевой атрибут R не находится в транзитивной функциональной зависимости от потенциального ключа R.
Пояснения к определению:
Неключевой атрибут отношения R — это атрибут, который не принадлежит ни одному из потенциальных ключей R.
Функциональная зависимость множества атрибутов Z от множества атрибутов X (записывается X → Z, произносится «икс определяет зет») является транзитивной, если существует такое множество атрибутов Y, что X → Y и Y → Z. При этом ни одно из множеств X, Y и Z не является подмножеством другого, то есть функциональные зависимости X → Z, X → Y и Y→ Z не являются тривиальными.
Определение 3NF, эквивалентное определению Кодда, но по-другому сформулированное, дал Карло Заниоло в 1982 году. Согласно ему, переменная отношения находится в 3NF тогда и только тогда, когда для каждой из её функциональных зависимостей X → A выполняется хотя бы одно из следующих условий:
Х содержит А (то есть X → A — тривиальная функциональная зависимость)
Х — суперключ
А — ключевой атрибут (то есть А входит в состав потенциального ключа).
Определение Заниоло четко определяет разницу между 3NF и более строгой нормальной формой Бойса-Кодда (НФБК): НФБК исключает третье условие («А — ключевой атрибут»).
Рассмотрим в качестве примера отношение, которое находится во 2NF, но не соответствует 3NF:
R1 |
||
Сотрудник |
Отдел |
Телефон |
Гришин |
Бухгалтерия |
11-22-33 |
Васильев |
Бухгалтерия |
11-22-33 |
Петров |
Снабжение |
44-55-66 |
В отношении атрибут «Сотрудник» является первичным ключом. Личных телефонов у сотрудников нет, и телефон сотрудника зависит исключительно от отдела.
Таким образом, в отношении существуют следующие функциональные зависимости: Сотрудник → Отдел, Отдел → Телефон, Сотрудник → Телефон.
Зависимость Сотрудник → Телефон является транзитивной, следовательно, отношение не находится в 3NF.
В результате разделения отношения R1 получаются два отношения, находящиеся в 3NF:
R2 |
|
Отдел |
Телефон |
Бухгалтерия |
11-22-33 |
Снабжение |
44-55-66 |
R3 |
|
Сотрудник |
Отдел |
Гришин |
Бухгалтерия |
Васильев |
Бухгалтерия |
Петров |
Снабжение |
Исходное отношение R1 при необходимости легко получается в результате операции соединения отношений R2 и R3.
Важным критерием качества разрабатываемой схемы БД является скорость выполнения операций обновления данных (вставки, модификации, удаления записей).
Выбор схемы БД определяет возникновение в процессе ее эксплуатации тех или иных аномалий обновления.
Аномалия обновления – появление в базе данных несогласованности данных при выполнении операций вставки, удаления, модификации записей.
Аномалии модификации – появление записей с противоречащими значениями в некоторых столбцах при изменении значений соответствующих полей одной записи.
Для отношения Студент (ФИО, Группа, Староста), где в столбце Группа хранится полное название группы, а столбец Староста содержит ФИО старосты группы, изменение значения Староста (например, для устранения ошибки) может привести к существованию более одного старосты одной и той же группы.
Определение: Переменная отношения находится в BCNF тогда и только тогда, когда каждая её нетривиальная и неприводимая слева функциональная зависимость имеет в качестве своего детерминанта некоторый потенциальный ключ[1].
Менее формально, переменная отношения находится в нормальной форме Бойса-Кодда тогда и только тогда, когда детерминанты всех ее функциональных зависимостей являются потенциальными ключами.
Для определения BCNF следует понимать понятие функциональной зависимости атрибутов отношения.
Пусть R является переменной отношения, а X и Y — произвольными подмножествами множества атрибутов переменной отношения R. Y функционально зависимо от X тогда и только тогда, когда для любого допустимого значения переменной отношения R, если два кортежа переменной отношения R совпадают по значению X, они также совпадают и по значению Y. Подмножество X называют детерминантом, а Y — зависимой частью.
Функциональная зависимость тривиальна тогда и только тогда, когда ее правая (зависимая) часть является подмножеством ее левой части (детерминанта).
Ситуация, когда отношение будет находиться в 3NF, но не в BCNF, возникает, например, при условии, что отношение имеет два (или более) потенциальных ключа, которые являются составными и имеют общий атрибут. На практике такая ситуация встречается достаточно редко, для всех прочих отношений 3NF и BCNF эквивалентны.
Нормальная форма Бойса-Кодда (англ. Boyce-Codd normal form; сокращённо BCNF) — одна из возможных нормальных форм отношения в реляционной модели данных.
Иногда нормальную форму Бойса-Кодда называют усиленной третьей нормальной формой, поскольку она во всех отношениях сильнее (строже) по сравнению с ранее определённой ЗНФ[1].
Названа в честь Рэя Бойса и Эдгара Кодда, хотя Кристофер Дейт указывает, что на самом деле строгое определение «третьей» нормальной формы, эквивалентное определению нормальной формы Бойса-Кодда, впервые было дано Иэном Хитом (англ. Ian Heath) в 1971 году, поэтому данную форму следовало бы называть «нормальной формой Хита»
Аномалии удаления – удаление лишней информации при удалении записи.
Для отношения Студент (ФИО, Группа, Староста), удаление студента может привести к удалению из БД и ФИО старосты группы (в том случае, если для данной группы запись – единственная).
вставки – добавление лишней информации или возникновение противоречащих значений в некоторых столбцах при вставке новой записи.
Для отношения Студент (ФИО, Группа, Староста), где в столбце Группа хранится полное название группы, а столбец Староста содержит ФИО старосты группы, добавление названия новой группы повлечет обязательное определение ФИО студента и старосты, в то время как эти данные могут быть пока не известны. В то же время, при добавлении нового студента значение поля Староста в новой записи может не совпадать со значением данного поля для другого студента этой же группы.
Для сохранения корректности БД необходимо устранять данные аномалии, выполняя дополнительные операции по просмотру и модификации данных. Потери в производительности, вызванные выполнением действий по устранению аномалий, могут быть весьма существенными, при этом данные потери, в большинстве случаев, не являются неизбежными, а определяются неудачным выбором схемы БД.
Указанные аномалии связаны с избыточностью данных в БД. Следует различать избыточное и неизбыточное дублирование данных.
Неизбыточное дублирование возникает из необходимости хранить идентичные данные, поскольку важен сам факт их идентичности, и удаление хотя бы одного представителя идентичных данных приведет к невосполнимой потере информации. В качестве примера неизбыточного дублирования можно рассмотреть дублирование значений атрибута Группа в отношении Студент (ФИО, Группа). При удалении одного из повторяющихся значений Группы будет потеряна информация о принадлежности одного студента к данной группе.
Избыточное дублирование (избыточность) обычно связано с необходимостью задания значения всех атрибутов отношения, при этом дублируемые данные не являются необходимыми, и в случае потери (удаления) могут быть восстановлены по данным одного или нескольких отношений БД. в качестве примера избыточного дублирования можно рассмотреть указать дублирование значений атрибута Староста в отношении Студент (ФИО, Группа, Староста). Для каждого студента некоторой группы значение атрибута Староста может быть восстановлено по значениям данного атрибута других студентов рассматриваемой группы.
Определить дублирование данных в БД, а значит и предсказать возможность возникновения аномалий обновления можно на этапе проектирования структуры базы данных. Одним из наиболее алгоритмически и понятийно простых методов устранения избыточности хранения данных является метод нормальных форм, который основан на анализе функциональных зависимостей (ФЗ) атрибутов отношений.
Проектирование базы данных (БД). Этапы проектирования БД (системный анализ, инфологическое, даталогическое и физическое проектирование). Типология моделей на различных этапах проектирования. Краткая характеристика моделей.
Проектирование баз данных — процесс создания схемы базы данных и определения необходимых ограничений целостности.
