Проектирование информационных систем и баз данных
Покупка
Основная коллекция
Тематика:
Проектирование баз и банков данных
Издательство:
Новосибирский государственный технический университет
Автор:
Стасышин Владимир Михайлович
Год издания: 2012
Кол-во страниц: 100
Дополнительно
Вид издания:
Учебное пособие
Уровень образования:
ВО - Бакалавриат
ISBN: 978-5-7782-2121-5
Артикул: 632046.01.99
Тематика:
ББК:
УДК:
ОКСО:
- ВО - Бакалавриат
- 09.03.02: Информационные системы и технологии
- ВО - Магистратура
- 09.04.02: Информационные системы и технологии
ГРНТИ:
Скопировать запись
Фрагмент текстового слоя документа размещен для индексирующих роботов
Министерство образования и науки Российской Федерации НОВОСИБИРСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ В.М. СТАСЫШИН ПРОЕКТИРОВАНИЕ ИНФОРМАЦИОННЫХ СИСТЕМ И БАЗ ДАННЫХ Утверждено Редакционно-издательским советом университета в качестве учебного пособия НОВОСИБИРСК 2012
УДК 004.65(075.8) С 779 Рецензенты: Персова М.Г., д-р техн. наук, профессор Кобылянский В.Г., канд. техн. наук, доцент Работа подготовлена на кафедре программных систем и баз данных для студентов IV курса ФПМИ дневного отделения (направления 01040062, 01050062) Стасышин В.М. С 779 Проектирование информационных систем и баз данных : учеб. пособие / В.М. Стасышин. - Новосибирск: Изд-во НГТУ, 2012.- 100 с. ISBN 978-5-7782-2121-5 Рассмотрены вопросы проектирования реляционных баз данных, входящие в программу лекций курсов «Базы данных и экспертные системы», «Базы данных и СУБД», читаемых студентам IV курса факультета прикладной математики и информатики Новосибирского государственного технического университета. В учебном пособии представлены современные методологии проектирования информационных систем и основные этапы проектирования баз данных, инфологическое и логическое проектирование, разработка триггеров и хранимых процедур. Главы иллюстрированы примерами для более успешного усвоения материала. Пособие может быть полезно специалистам, связанным с информационными технологиями, и тем, кто самостоятельно осваивает вопросы проектирования и разработки приложений над базами данных. ISBN 978-5-7782-2121-5 УДК 004.65(075.8) © Стасышин В.М.,2012 © Новосибирский государственный технический университет, 2012
ОГЛАВЛЕНИЕ Введение........................................................ 5 1. Проектирование информационных систем.......................... 7 1.1. Методология функционального моделирования работ (SADT)........................................................ 7 1.2. Методология диаграмм потоков данных (DFD) .............. 11 1.3. Методология объектного проектирования UML .............. 14 1.3.1. Диаграммы прецедентов............................. 14 1.3.2. Диаграммы деятельности............................ 16 2. Проектирование баз данных................................... 20 2.1. Этапы проектирования базы данных ...................... 20 2.2. Мифологическое проектирование ......................... 20 2.3. Логическое проектирование реляционных баз данных....... 27 2.3.1. Полная функциональная зависимость и вторая нормальная форма .................................................. 29 2.3.2. Транзитивные зависимости и третья нормальная форма... 32 2.3.3. Нормальная форма Бойса-Кодда..................... 33 2.3.4. Многозначная зависимость и четвертая нормальная форма................................................... 35 2.3.5. Зависимость проекции/соединения и пятая нормальная форма................................................... 38 3. Ограничения целостности..................................... 39 3.1. Декларативная поддержка ограничений целостности........ 41 3.2. Процедурная поддержка ограничений целостности ......... 42 4. Задания для выполнения лабораторных, курсовых и исследовательских работ по теме «Проектирование информационных систем и баз данных»............................................... 53 4.1. Информационная система вуза......................... 55 4.2. Информационная система торговой компании............ 57 4.3. Информационная система медицинских организаций города. 59 3
4.4. Информационная система автопредприятия................ 61 4.5. Информационная система проектной организации.......... 62 4.6. Информационная система авиастроительного предприятия.. 64 4.7. Информационная система военного округа................ 66 4.8. Информационная система строительной организации ...... 67 4.9. Информационная система библиотечного фонда города..... 69 4.10. Информационная система спортивных организаций города. 71 4.11. Информационная система автомобилестроительного предприятия ....................................................... 72 4.12. Информационная система гостиничного комплекса.... 4.13. Информационная система магазина автозапчастей.... 4.14. Информационная система представительства туристической фирмы в зарубежной стране.............................. 4.15. Информационная система аптеки ................... 4.16. Информационная система библиотеки вуза........... 4.17. Информационная система туристического клуба...... 4.18. Информационная система городской телефонной сети. 4.19. Информационная система театра.................... 4.20. Информационная система зоопарка.................. 4.21. Информационная система ГИБДД..................... 4.22. Информационная система фотоцентра................ 4.23. Информационная система железнодорожной пассажирской станции................................................ 4.24. Информационная система городской филармонии ..... Библиографический список 74 76 78 80 82 84 86 88 90 92 93 95 97 99
ВВЕДЕНИЕ В учебном пособии рассматриваются вопросы проектирования информационных систем и баз данных. Это очень важная тема, без основательного знакомства с которой невозможно стать не только квалифицированным программистом и разработчиком приложений над базами данных, но и разработчиком любых информационных систем. Уровень развития информационных технологий заставляет задуматься большинство средних и крупных организаций о создании открытых и распределенных информационных систем баз данных на основе многопользовательских профессиональных СУБД. Информационные системы больших организаций содержат десятки баз данных, нередко распределенных между несколькими взаимосвязанными узлами вычислительной сети различных подразделений. Тенденции развития информационных технологий приводят к постоянному возрастанию сложности информационных систем, создаваемых в различных областях экономики. Современные крупные информационные системы обладают, как правило, следующими особенностями: • сложностью описания (т. е. взаимосвязями между большим количеством функций, процессов и элементов данных, требующей тщательного моделирования и анализа); • наличием совокупности тесно взаимодействующих компонентов (подсистем), имеющих свои локальные задачи и использующих нерег-ламентированные запросы к данным большого объема; • отсутствием прямых аналогов (т. е. невозможностью использования типовых проектных решений и прикладных систем); • функционированием в неоднородной среде на нескольких аппаратных платформах; 5
• разобщенностью групп разработчиков и их разнородностью по уровню квалификации и по традиции использования инструментальных средств. Для успешного создания базы данных объект проектирования должен быть прежде всего адекватно описан, должны быть построены полные и непротиворечивые функциональные и информационные модели. Опыт проектирования информационных систем показывает, что это логически сложная, затратная по времени работа, требующая высокой квалификации разработчиков. При проектировании информационной системы необходимо проанализировать ее цель, выявить требования отдельных пользователей и построить серию адекватных моделей ее описания. Проектирование начинается с изучения процессов, потоков данных, построения диаграмм в соответствии с используемой методологией. Проектирование базы данных, лежащей в основе большинства информационных систем, состоит в выявлении сущностей и связей между ними и построении ER-модели. Основная цель проектирования -это сокращение избыточности хранимых данных, что ведет не только к экономии объема используемой памяти, но и к уменьшению затрат на многократные операции обновления избыточных копий и к устранению возможных противоречий из-за хранения в разных местах сведений об одном и том же объекте. В первых трех частях учебного пособия рассмотрены различные аспекты проектирования информационных систем и баз данных, даны рекомендации по разработке триггеров и хранимых процедур (являющихся современными средствами задания ограничений целостности). Приведенные в четвертой части пособия задания рекомендуются для выполнения курсовых, лабораторных и исследовательских работ по дисциплинам «Базы данных» и «Распределенные базы данных».
1. ПРОЕКТИРОВАНИЕ ИНФОРМАЦИОННЫХ СИСТЕМ На начальных этапах создания информационной системы необходимо понять, как работает организация, которую собираются автоматизировать. Никто в компании не знает, как она работает в тех подробностях, которые необходимы для создания информационной системы. Руководитель хорошо знает работу в целом, но не в состоянии вникнуть в детали работы каждого сотрудника. Сотрудник хорошо знает, что происходит на его рабочем месте, но плохо понимает, как работают коллеги. Поэтому для описания работы предприятия (или его части) следует построить модель (лучше - серию моделей), которая была бы адекватна предметной области и содержала сведения обо всех участниках бизнес-процессов [3;, 5-7]. Наиболее популярными методологиями проектирования являются: • методология функционального моделирования работ SADT (Structured Analysis and Design Technique); • методология диаграмм потоков данных DFD (Data Flow Diagrams); • методология объектного проектирования UML (UniFied Modeling Language) с целой серией моделей. 1.1. Методология функционального моделирования работ (SADT) В методологии функционального моделирования работ Structured Analysis and Design Technagie (SADT) система представляется как совокупность взаимодействующих работ (или функций). Связи между 7
работами определяют технологический процесс, или структуру взаимосвязи внутри организации. Содержательно модель SADT - серия диаграмм, разбивающих сложный объект на составные части. Работа (activity) - поименованный процесс, функция или задача (изображается в виде прямоугольника), которые происходят в течение определенного времени и имеют распознаваемый результат. Каждая из работ на диаграммах следующего уровня может быть декомпозирована на несколько блоков, соединенных интерфейсными дугами. Эти блоки называют подфункциями (подмодулями) исходной функции. Каждый из подмодулей может быть декомпозирован аналогичным образом (рис. 1.1). Рис. 1.1. Декомпозиция модели SADT Взаимодействие работ с внешним миром и между собой описывается в виде стрелок, имеющих следующий смысл. Вход (Input) - материал или информация, которые используются работой для получения результата (стрелка, входящая в левую грань). 8
Управление (Control) - правила, стратегии, стандарты, которыми руководствуется работа (стрелка, входящая в верхнюю грань). В отличие от входной информации управление не подлежит изменению. Выход (Output) - материал или информация, которые производятся работой (стрелка, исходящая из правой грани). Каждая работа должна иметь хотя бы одну стрелку выхода, поскольку работа без результата не имеет смысла и не должна моделироваться. Механизм (Mechanism) - ресурсы, которые выполняют работу (персонал, станки, устройства - стрелка, входящая в нижнюю грань). Вызов (Call) - стрелка, указывающая на другую модель работы (стрелка, исходящая из нижней грани). В SADT-модели различают пять типов связей работ. Связь по входу (input-output) возникает, когда выход вышестоящей работы направляется на вход следующей работы. Связь по управлению (output-control) определяет, что выход вышестоящей работы направляется на управление следующей работы. Связь показывает доминирование вышестоящей работы. Обратная связь по входу (output-input feedback) возникает, когда выход нижестоящей работы направляется на вход вышестоящей. Используется для описания циклов. 9
Обратная связь по управлению (output-control feedback) определяет, что выход нижестоящей работы направляется на управление вышестоящей. Показатель эффективности бизнес-процесса. Связь выход-механизм (output-mechanism) означает, что одна работа подготавливает ресурсы для проведения другой работы. Из перечисленных блоков, как из отдельных кирпичиков, строится SADT-диаграмма (рис. 1.2). Pic. 1.2. SADT-диаграмма технологического процесса 10