Автор работы: Пользователь скрыл имя, 23 Октября 2012 в 19:57, курсовая работа
Целью данной работы является построение информационной системы (ИС) «Спортивный магазин «Атлет» для автоматизации работы спортивного онлайн-магазина.
Задачи данной работы:
провести системный анализ предметной области «Спортивные товары»;
провести обзор информационных технологий, подходящих для разработки информационной системы магазина спортивных товаров;
изучить аналогичные информационные системы данной предметной области;
описать требования, предъявляемые к разработке данной базы данных;
разработать инфологическую модель базы данных;
обосновать выбор модели данных и осуществить логическое проектирование информационной системы;
нормализовать спроектированную модель и составить схему базы данных;
осуществить физическое проектирование базы данных на выбранной СУБД;
разработать программное обеспечение, реализующее отчеты и формы для базы данных;
отладить работу программного обеспечения.
Введение 3
Глава 1. Анализ предметной области 5
1.1. Системный анализ объекта автоматизации «Спортивный магазин «Атлет» 5
1.2. Обзор информационных технологий, подходящих для разработки ИС 8
1.3. Обзор продуктов-аналогов 16
1.4. Требования к разрабатываемой базе данных 19
Выводы 20
Глава 2. Проектирование базы данных для объекта автоматизации «Спортивный магазин «Атлет» 21
2.1. Разработка инфологической модели 21
2.2. Обоснование выбора модели данных 22
2.3. Логическое проектирование 25
2.4. Нормализация, схема базы данных 28
Выводы 30
Глава 3. Программная реализация 32
3.1. Анализ и выбор СУБД 32
3.2. Физическое проектирование базы данных в СУБД 33
3.3. Разработка представлений 34
3.4. Разработка форм 35
3.5. Разработка отчетов 35
3.6. Реализация ограничений 36
3.7. Безопасность и контроль 37
Заключение 38
Список литературы 39
Приложение. Исходные коды триггеров 40
Объект-экземпляр класса принадлежит своему классу и имеет одного родителя. Родовые
отношения образуют в БД связную иерархию объектов.
Основным достоинством
объектно-ориентированной
Недостатками
объектно-ориентированной
неудобство обработки данных и низкая скорость выполнения запросов [9].
Обоснование выбора
Из проделанного анализа моделей данных становится ясным, что удобнее всего использовать реляционную модель данных. Она достаточно проста и удобна для реализации, использования, а также для понимания пользователем. К тому же является наиболее распространенной моделью представления данных. Проблемы же эффективности обработки данных этого типа вполне разрешимы.
2.3 Логическое проектирование
После проведённого анализа в предыдущем пункте, была выбрана реляционная модель данных, т. к. определенные нами сущности в главе 2.1 удобнее и проще всего использовать в реляционной модели данных.
В реляционных базах данных (РБД) датологическое проектирование приводит к разработке схемы БД, т.е. совокупности схем отношений, адекватно моделирующих объекты ПО и семантических связей между ними.
Основой анализа корректности схемы являются функциональные зависимости между атрибутами БД. Некоторые могут быть нежелательными.
В конце этого
этапа должно быть получено описание
схемы БД в терминах выбранной
СУБД. Целью датологического проектир
Корректной
называется схема БД, в которой
отсутствуют нежелательные
Процесс разработки корректной схемы РБД и является датологическим проектированием. Возможны 2-а способа:
Для перехода от инфологической модели к реляционной существует специальный алгоритм:
Воспользуемся данным алгоритмом и опишем каждую сущность инфологической модели, ставя ей в соответствие отношение:
При переходе от инфологической модели к реляционной была раскрыта связь М:М между отношениями «Поставщики» и «Сотрудник». Отношением-связкой в данном случае стало отношение «Заказ», в котором будет информация о заказах, которые были сделаны сотрудниками от поставщиков;
Исходя из приведённых выше отношений, на рис. 2.2 показана построенная схема получившейся БД.
Рис 2.2. Схема реляционной модели БД до нормализации
2.4 Нормализация, схема базы данных.
Построение корректной схему РБД в процессе датологического проектирования тесно связан с понятием нормализации (способ декомпозиция, указанный выше).
Нормализация – это процесс преобразования БД к виду, отвечающему нормальным формам (НФ), путём разбиения исходного множества отношения на большее, часть которых являются проекциями. Нормализация имеет своей целью устранить избыточность БД. Нормализация отношений- основная задача, решаемая в процессе проектирования реляционной базы данных . Нормализация – это процесс, позволяющий гарантировать эффективность структур данных в реляционной базе данных.
Понятие нормализации тесно связано с понятием функциональной зависимости. Функциональная зависимость (ФЗ) определяет отношения между объектами и их свойствами в рассматриваемой ПО.
В отношении «Покупка» тоже есть транзитивная зависимость. В связи с этим
отношение «Покупка» распадается на 2:
Теперь все отношения данной модели находятся в 3НФ, т.к. ни в одном из них нет транзитивных зависимостей.
Таким образом, изначальная схема реляционной модели БД преобразуется в следующую схему (рис. 2.3).
Выводы.
Во второй главе курсовой работы приведена разработка инфологической модели. Выделены сущности, дано их описание и построена инфологическая модель предметной области.
Далее в ходе обоснования выбора модели данных описаны существующие модели данных (иерархическая, сетевая, объектно-ориентированная, реляционная), указаны их достоинства и недостатки, и сделан выбор в пользу реляционной модели.
Затем на основании инфологической модели построена даталогическая модель данных, дан список атрибутов ее отношений и проведена нормализация до третьей 3НФ. Таким образом, завершено проектирование базы данных и получена вся информация, необходимая для реализации проектируемой информационной системы в реляционной СУБД.
Рис. 2.3. Схема реляционной модели БД после нормализации
Глава 3. Программная реализация
3.1. Анализ и выбор СУБД
Для программной реализации информационной системы выбрана СУБД PostgreSQL. В последнее время эта СУБД начала активно вырываться вперед относительно своих Open Source конкурентов. PostgreSQL обладает высокой надежностью, она удобна и гибка в использовании. Также присутствует поддержка огромной базы языков программирования, написано множество плагинов-коннекторов для работы с данной СУБД. На оффициальном сайте присутствует обширная документация и активный форум, на котором всегда работает поддержка пользователей и разработчиков [13].
Ruby on Rails – Фреймворк,
написанный на языке программир
Ruby on Rails определяет следующие принципы разработки приложений:
Основными компонентами приложений Ruby on Rails являются модель (model), представление (view) и контроллер (controller).
Модель предоставляет остальным компонентам приложения объектно-ориентированное представление данных (таких как каталог продуктов или список заказов). Объекты модели могут осуществлять загрузку и сохранение данных в реляционной базе данных, а также реализуют бизнес-логику. Для хранения объектов модели в реляционной СУБД по умолчанию в Rails 3 использованна библиотека ActiveRecord. Конкурирующий аналог - DataMapper.
Представление создает пользовательский интерфейс для отображения полученных
от контроллера данных. Представление также передает запросы пользователя на манипуляцию данными в контроллер (как правило, представление не изменяет непосредственно модель). В Ruby on Rails представление описывается при помощи шаблонов ERB.Они представляют собой файлы HTML с дополнительными включениями фрагментов кода Ruby (Embedded Ruby или ERb). Вывод, сгенерированный встроенным кодом Ruby, включается в текст шаблона, после чего получившаяся страница HTML возвращается пользователю. Кроме ERb возможно использовать еще около 20 шаблонизаторов.
Контроллер в Rails – это набор логики, запускаемой после получения HTTP-запроса сервером. Контроллер отвечает за вызов методов модели и запускает формирование представления. Контроллером в Ruby on Rails является класс, наследованный от ActionController::Base. Открытые методы контроллера являются так называемыми действиями (actions). Action часто соответствует отдельному представлению. Например, по запросу пользователя admin/list будет вызван метод list класса AdminController и затем использовано представление list.html.erb [15].
3.2. Физическое проектирование БД.
Во время физического проектирования базы данных были созданы следующие таблицы:
Схема, в которую связаны данные таблицы, повторяет схему БД после нормализации, описанную в пункте 2.4., и изображенную на рисунке 2.3.
Информация о работе Разработка БД для АСУ Спортивный магазин ООО "Атлет"