Слайд 1Требования к базе данных
Учебная дисциплина «технологии баз данных в управленческой
деятельности».
Тема 3.1., 4 ч.
Попова Е.Э.
Слайд 2Организационный аспект процесса проектирования. Задачи и структура процесса проектирования
Выбор подхода.
Определение
круга заинтересованных лиц.
Четкая формулировка цели.
Разработка календарного плана.
Разработка единых правил (терминология,
документация….).
ОРГАНИЗАЦИЯ
ПРОЕКТИРОВАНИЕ
Слайд 3Организационный аспект процесса проектирования. Задачи и структура процесса проектирования
Основные подходы:
Восходящий
(небольшое количество атрибутов). Базовая методология: нормализация.
Нисходящий (большое количество атрибутов). Базовая
методология: ER-модель.
Нижний уровень атрибутов
Разработка модели данных
Слайд 4Организационный аспект процесса проектирования. Задачи и структура процесса проектирования
Слайд 5Организационный аспект процесса проектирования. Задачи и структура процесса проектирования
Слайд 6Организационный аспект процесса проектирования. Задачи и структура процесса проектирования
Определение круга
заинтересованных лиц
заказчики, которые финансируют проект или приобретают продукт для решения
каких-то бизнес-задач;
пользователи, которые взаимодействуют напрямую или не напрямую с приложением (подкласс заказчиков);
аналитики требований, которые пишут требования и передают их разработчикам;
разработчики, которые создают, разворачивают и поддерживают продукт;
тестеры, которые определяют соответствие поведения ПО желаемому;
технические писатели, которые отвечают за создание руководства пользователей, справочную систему…;
менеджер по проекту, который планирует процесс и руководит разработчиками вплоть до успешного выпуска продукта;
сотрудники правового отдела, которые следят, чтобы продукт не противоречил всем действующим нормам;
производственники, которые должны построить продукт, содержащий данное ПО;
сотрудники отдела продаж и маркетинга, выездной службы поддержки и другие, кому придется работать с продуктом и его пользователями.
Слайд 7Организационный аспект процесса проектирования. Задачи и структура процесса проектирования
Участники разработки
Группа
заказчика
Группа разработчика
Руководитель организации.
Начальник отдела.
Конечные пользователи.
Консультант в предметной области (аналитик).
Администратор БД.
Системный
программист.
Тестировщик.
Технический писатель.
Слайд 8Организационный аспект процесса проектирования. Задачи и структура процесса проектирования
Цель процесса
проектирования БД состоит в получении такого проекта, который удовлетворяет следующим
требованиям:
Корректность схемы БД;
Обеспечение целостности;
Защита данных;
Обеспечение ограничений на аппаратные и программные ресурсы вычислительной системы;
Эффективность функционирования;
Простота и удобство в эксплуатации;
Гибкость.
Слайд 9Организационный аспект процесса проектирования. Задачи и структура процесса проектирования
Слайд 10ОБСЛЕДОВАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ. ИЗУЧЕНИЕ ЕЕ ИНФОРМАЦИОННОЙ СТРУКТУРЫ
ШАГ 1. СБОР И
АНАЛИЗ АПРИОРНОЙ ИНФОРМАЦИИ
ОПРОС ПОЛЬЗОВАТЕЛЕЙ. РАБОТА С ДОКУМЕНТАМИ.
АНАЛИЗ ПОЛУЧЕННОЙ ИНФОРМАЦИИ.
ДОКУМЕНТИРОВАНИЕ ТРЕБОВАНИЙ.
Слайд 11ОБСЛЕДОВАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ. ИЗУЧЕНИЕ ЕЕ ИНФОРМАЦИОННОЙ СТРУКТУРЫ
ВОЗМОЖНЫЕ ВОПРОСЫ:
что представляют собой
требования пользователей. в какой форме они могут быть выражены;
как требования
пользователей могут быть преобразованы в эффективную структуру базы данных;
какие данные используются разными приложениями. смогут ли приложения совместно использовать какие-либо из этих данных;
сможет ли новая система объединить существующие приложения или их необходимо будет кардинально переделывать для совместной работы с новой системой;
кто будет вводить данные в базу и в какой форме;
как часто будут изменяться данные;
какая информация является наиболее чувствительной к скорости ее извлечения и изменения;
как часто и каким образом структура базы данных должна перестраиваться в соответствии с новыми и/или изменяющимися требованиями.
…
Слайд 12ОБСЛЕДОВАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ. ИЗУЧЕНИЕ ЕЕ ИНФОРМАЦИОННОЙ СТРУКТУРЫ
ОПРЕДЕЛЕНИЕ СФЕРЫ ПРИМЕНЕНИЯ БД.
СБОР
ИНФОРМАЦИИ ОБ ИСПОЛЬЗОВАНИИ ДАННЫХ.
ПРЕОБРАЗОВАНИЕ ИНФОРМАЦИОННЫХ ТРЕБОВАНИЙ.
Слайд 13ОБСЛЕДОВАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ. ИЗУЧЕНИЕ ЕЕ ИНФОРМАЦИОННОЙ СТРУКТУРЫ
ОПРЕДЕЛЕНИЕ СФЕРЫ ПРИМЕНЕНИЯ БД.
СБОР
ИНФОРМАЦИИ ОБ ИСПОЛЬЗОВАНИИ ДАННЫХ.
ПРЕОБРАЗОВАНИЕ ИНФОРМАЦИОННЫХ ТРЕБОВАНИЙ.
ИНФОРМАЦИЯ О ПРОИЗВОДСТВЕННЫХ ФУНКЦИЯХ
ИНФОРМАЦИЯ О
ФУНКЦИЯХ УПРАВЛЕНИЯ
НАИМЕНОВАНИЕ РАБОТ.
ВЫПОЛНЯЕМАЯ ФУКЦИЯ.
ЦЕЛЬ ВЫПОЛНЯЕМОЙ РАБОТЫ.
КОНТРОЛЬ И ПЛАНИРОВАНИЕ. ДАННЫЕ, НЕОБХОДИМЫЕ ДЛЯ ЭТИХ ФУНКЦИЙ.
ВОЗМОЖНЫЕ ИЗМЕНЕНИЯ В ДЕЯТЕЛЬНОСТИ.
ИДЕНТИФИКАЦИЯ ПРОИЗВОДСТВЕННЫХ ЗАДАЧ И ЗАДАЧ УПРАВЛЕНИЯ
Слайд 14ОБСЛЕДОВАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ. ИЗУЧЕНИЕ ЕЕ ИНФОРМАЦИОННОЙ СТРУКТУРЫ
ОПРЕДЕЛЕНИЕ СФЕРЫ ПРИМЕНЕНИЯ БД.
СБОР
ИНФОРМАЦИИ ОБ ИСПОЛЬЗОВАНИИ ДАННЫХ.
ПРЕОБРАЗОВАНИЕ ИНФОРМАЦИОННЫХ ТРЕБОВАНИЙ.
Слайд 15ОБСЛЕДОВАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ. ИЗУЧЕНИЕ ЕЕ ИНФОРМАЦИОННОЙ СТРУКТУРЫ
ОПРЕДЕЛЕНИЕ СФЕРЫ ПРИМЕНЕНИЯ БД.
СБОР
ИНФОРМАЦИИ ОБ ИСПОЛЬЗОВАНИИ ДАННЫХ.
ПРЕОБРАЗОВАНИЕ ИНФОРМАЦИОННЫХ ТРЕБОВАНИЙ.
Составление списка всех используемых и
создаваемых элементов данных.
Определение всех производственных функций, их характеристик и используемых данных.
Определение всех функций управления, их характеристик и используемых данных.
Составление списка всех явных и неявных правил и линий поведения в управлении деятельностью организации.
Составление списка возможных будущих изменений и путей их влияния на деятельность организации.
Слайд 16ОБСЛЕДОВАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ. ИЗУЧЕНИЕ ЕЕ ИНФОРМАЦИОННОЙ СТРУКТУРЫ
ОПРЕДЕЛЕНИЕ СФЕРЫ ПРИМЕНЕНИЯ БД.
СБОР
ИНФОРМАЦИИ ОБ ИСПОЛЬЗОВАНИИ ДАННЫХ.
ПРЕОБРАЗОВАНИЕ ИНФОРМАЦИОННЫХ ТРЕБОВАНИЙ.
На основе списка элементов данных
составляют словарь элементов данных.
Слайд 17ОБСЛЕДОВАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ. ИЗУЧЕНИЕ ЕЕ ИНФОРМАЦИОННОЙ СТРУКТУРЫ
Шаг 1 предполагает:
сбор данных
(результатов измерений, наблюдений, отчетов, документов научно-технического, технико-экономического, бухгалтерского и т.п.
характера, опроса экспертов-специалистов в данной предметной области).
выявление перечня задач, которые могут быть решены с использованием разрабатываемой БД.
содержательный анализ собранной информации.
Результат шага 1:
описание целей создания БД.
описание входной и выходной информации.
модель состава системы.
Слайд 18ОБСЛЕДОВАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ. ИЗУЧЕНИЕ ЕЕ ИНФОРМАЦИОННОЙ СТРУКТУРЫ
Шаг 2. анализ данных
и синтез инфологической модели
Слайд 19ОБСЛЕДОВАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ. ИЗУЧЕНИЕ ЕЕ ИНФОРМАЦИОННОЙ СТРУКТУРЫ
Методы:
наблюдение;
Опрос, анкетирование, интервью;
Анализ
документов;
Функционально-информационный
анализ
Систематизация;
Графический;
личное участие.
Слайд 20Определение, анализ и проверка требований. Документирование требований
IEEE Standard Glossary of
Software Engineering Terminology определяет требования как:
1. условия или возможности,
необходимые пользователю для решения проблем или достижения целей;
2. условия или возможности, которыми должна обладать система или системные компоненты, чтобы выполнить контракт или удовлетворять стандартам, спецификациям или другим формальным документам;
3. документированное представление условий или возможностей для пунктов 1 и 2.
Основной закон: требования должны быть документированы.
Слайд 21Определение, анализ и проверка требований. Документирование требований
Требования:
1.Функциональные.
бизнес-требования,
требования пользователей,
Системные/функциональные
требования.
2. нефункциональные.
Бизнес-правила,
Внешний интерфейс,
Ограничения.
Слайд 22Определение, анализ и проверка требований. Документирование требований
Слайд 23Определение, анализ и проверка требований. Документирование требований
Слайд 24Определение, анализ и проверка требований. Документирование требований
Рекомендации:
Создайте стандартный шаблон для
документирования требований.
Создайте словарь бизнес-правил.
Определите источники требований. Используйте различные источники.
Определите классы
пользователей. Найдите наиболее активных пользователей.
Осуществляйте проверку документирования требований.
Слайд 25Определение, анализ и проверка требований. Документирование требований
Слайд 26Пример 1. необходимо создать БД «Сессия студентов факультета»
БД должна:
хранить в течение
всего времени обучения студента персональную информацию о каждом студенте, успеваемости
по каждому предмету и распределении студентов по группам;
выводить в удобной форме данные по следующим запросам пользователя:
поиск заданного студента по фамилии или номеру зачетной книжки;
выборка всех данных об успеваемости заданного студента за текущий учебный год и за все время обучения;
выборка всех неуспевающих студентов;
средний балл по каждому предмету;
расчет количества студентов по группам;
средняя оценка по предметам и группам.
3.автоматизировать обработку информации при следующих бизнес- операциях:
прием нового студента;
коррекция данных о студенте и его успеваемости;
формирование личной ведомости успеваемости;
4.выводить следующие документы на печать:
ведомость средней успеваемости факультета;
список студентов по группам;
ведомость успеваемости студентов по группам и предметам.
Слайд 27Пример 1. необходимо создать БД «Сессия студентов факультета»
перечень вопросов:
1. Сколько студентов
учится?
2. Сколько специальностей, курсов?
3. Как распределены студенты по специальностям и
курсам?
4. Сколько дисциплин читается на каждом курсе по каждой специальности?
5. Как часто обновляется информация в базе данных?
6. Сколько преподавателей?
7. Какая преемственность существует между читаемыми дисциплинами?
8. Сколько лекционных аудиторий и аудиторий для проведения практических занятий, лабораторий?
9. Как информация, представленная в п.п. 1-8, используется в настоящее время (расписание занятий, экзаменов, зачетов и т.д.) и как ее собираются использовать?
10. Сколько раз в день, сколько человек и кто пользуются БД?
Слайд 28Пример 1. необходимо создать БД «Сессия студентов факультета»
Анализ требований:
Вопрос 1. Для каких
типов задач (приложений) проектируется БД?
Ответ. Для следующих задач: Задача 1.
Информация о студентах. Задача 2. Информация о преподавателях. Задача 3. Информация об успеваемости студентов. Задача 4. Информация о предметах.
Вопрос 2. Какими информационными объектами характеризуются эти задачи?
Ответ. Задача 1 характеризуется информационным объектом: личные дела студентов. Задача 2 характеризуется информационным объектом: личные дела преподавателей. Задача 3 характеризуется одним информационным объектом - сессия. Задача 4 характеризуется одним информационным объектом - предметы.
Вопрос 3. Каким текущим запросам должны удовлетворять данные информационные объекты?
Вопрос 4. Каким перспективным запросам должны удовлетворять информационные объекты в БД «Сессия студентов факультета»?
Слайд 29Пример 1. необходимо создать БД «Сессия студентов факультета»
Определение информационных объектов:
1. На
какие классы можно разбить данные, подлежащие хранению в БД?
2. Какое
имя можно присвоить каждому классу данных?
3. Какие наиболее интересные характеристики (с точки зрения пользователя) каждого класса данных можно выделить?
4. Какие имена можно присвоить выбранным наборам характеристик?
Слайд 30Пример 1. необходимо создать БД «Сессия студентов факультета»
Определение связей между информационными
объектами:
1. Какие типы связей между информационными объектами?
2. Какое имя можно
присвоить каждому типу связей?
3. Каковы возможные типы связей, которые могут быть использованы впоследствии?
4. Имеют ли смысл какие-нибудь комбинации типов связей?
Слайд 31Пример 1. необходимо создать БД «Сессия студентов факультета»
выявлении условий ограничения целостности:
1.
Какова область значений для числовых характеристик?
2. Каковы функциональные зависимости между
характеристиками одного информационного объекта?
3. Какой тип отображения соответствует каждому типу связей?
Слайд 32Пример 1. необходимо создать БД «Сессия студентов факультета»
Определение сущностей (объектов):
факультет (код Факультета, название,
код специальности, декан).
Специальность (код специальности, название, код кафедры).
кафедры факультета (код кафедры, название,
код факультета, зав.кафедрой).
студент (номер зачетной книжки, ФИО, группа, пол, дата рождения, домашний адрес, телефон).
преподаватель (№ страхового свидетельства. ФИО, дата рождения, домашний адрес, телефон, должность, ученое звание, ученая степень, код кафедры, стаж).
дисциплина (код дисциплины, название, код специальности, число часов, виды занятий, число читаемых семестров, на каких курсах преподается).
ведомость (№ п/п, номер зачетной книжки, код дисциплины, семестр, форма сдачи, дата сдачи, отметка, преподаватель).
Слайд 33Пример 1. необходимо создать БД «Сессия студентов факультета»
Определение ситуаций:
Студент учится на
факультете.
Преподаватель преподает дисциплину.
Преподаватель работает на кафедре.
Студент сдает экзамен по дисциплине.
Слайд 34Пример 1. необходимо создать БД «Сессия студентов факультета»
ограничения на атрибуты объектов:
1.
Значение атрибута "код факультета" (сущность факультет) лежит в интервале
0-10.
2. Значение атрибута "курс"
(сущность - студент) лежит в интервале 1-6 и хранится первая цифра номера группы.
3. Значение атрибута "семестр" (сущность - студент, дисциплина) лежит в интервале 1-12.
4. Значение атрибута "число часов" (сущность - дисциплина) лежит в интервале 1-300.
5. Одному студенту может быть приписана только одна группа.
6. Один студент может учиться только на одном факультете.
7. Один студент в семестре сдает от 3 до 10 дисциплин.
8. Один студент изучает в семестре от 6 до 12 дисциплин.
9.Одному преподавателю приписывается только одна кафедра.
10.Один студент может пересдавать одну дисциплину не более трех раз.