ПРОЕКТИРОВАНИЕ БАЗЫ ДАННЫХ КАТАЛОГА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

Автор работы: Пользователь скрыл имя, 29 Мая 2013 в 17:59, курсовая работа

Описание работы

На курсовое проектирование была выбрана тема каталогизации программного обеспечения общего назначения.
Объектом разработки выступала база данных и клиентское приложения для работы с ней для работы со структурированным каталогом программ. Данный каталог предлагает всем желающим получить информацию об интересующих его программах, а разработчикам добавлять и изменять свои программы в каталоге.
При разработке серверной части проекта была использована СУБД MySQL, которая зарекомендовала себя как СУБД для веб-приложений. Клиентская часть проекта написана на скриптовом языке PHP с использованием процедурного подхода к программированию.

Файлы: 1 файл

Пояснительная записка.doc

— 1.06 Мб (Скачать файл)


Федеральное агентство  по образованию

Государственное образовательное  учреждение высшего 

профессионального образования

«Ярославский государственный  технический университет»

Кафедра «Информационные системы и технологии»

 

 

Курсовой проект защищен

с оценкой (_________)

Руководитель,

преподаватель

(                        ) С.Ю. Бойков

“__”_________  2010 г.

 

 

 

 

ПРОЕКТИРОВАНИЕ БАЗЫ ДАННЫХ КАТАЛОГА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

 

 

Расчетно-пояснительная  записка к курсовому проектированию

по дисциплине “Системы управления базами данных”

 

ЯГТУ 230201.65-001 КР

 

 

 

 

 

 

Нормоконтролер Работу выполнил

преподаватель студент гр. ЭИС-54

(                    ) С.Ю. Бойков (                      ) А. А. Бобков

“___”________  2010 г. “___”________  2010 г.

 

 

 

 

2010

 

Государственное образовательное учреждение высшего

профессионального образования

 «Ярославский государственный  технический университет»

Кафедра ___________________________

 

З А Д А Н И Е      №________

ПО КУРСОВОМУ ПРОЕКТИРОВАНИЮ

 

Студенту ___________ факультет __________ курс _____ группа _______

 

1  Тема проекта и исходные  данные

_____________________________________________________________

_____________________________________________________________

_____________________________________________________________

2 Представить следующие материалы

  1. текстовые

а)_______________________________________________________

б)_______________________________________________________

в)_______________________________________________________

г)_______________________________________________________

д)_______________________________________________________

е)_______________________________________________________

ж)_______________________________________________________

  1. графические

а)_______________________________________________________

б)_______________________________________________________

в)_______________________________________________________

3 Рекомендуемая литература  и материалы

__________________________________________________________________________________________________________________________

4 Дата выдачи задания______________________

5 Срок сдачи законченного проекта_______________________

6 Отметка о явке на консультацию:

1)____________________2)___________________3)_______________

4)____________________5)___________________6)_______________

 

Руководитель проекта                                 Зав кафедрой

 

 

 

 

Реферат

 

      41 с., 18 рис., 7 табл., 3 источника, 3 прил.

 

СУБД, PHP, MYSQL, UML, ПРОГРАММНЫЙ КОМПЛЕКС

 

Объектом исследования являются проектирование и разработка каталога программного обеспечения.

Цель работы - разработка каталога программного обеспечения общего назначения.

В процессе работы проводилось проектирование предметной области и разработка программы.

В результате исследования была разработана программа каталогизации программного обеспечения.

Программа может применяться для  создания или расширения веб-сайтов.

 

 СОДЕРЖАНИЕ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Введение

 

 

 

На курсовое проектирование была выбрана тема каталогизации  программного обеспечения общего назначения. 

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

При разработке серверной  части проекта была использована СУБД MySQL, которая зарекомендовала себя как СУБД для веб-приложений. Клиентская часть проекта написана на скриптовом языке PHP с использованием процедурного подхода к программированию.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1 Обоснование выбора СУБД и программного обеспечения

 

 

 

Наборы принципов, которые определяют организацию логической структуры хранения данных в базе, называются моделями данных. Существуют 4 основные модели данных - иерархические и сетевые структуры, списки (плоские таблицы), реляционные базы данных.

Основным недостатком  иерархических структур данных является увеличенный размер пути доступа. Очень часто бывает так, что длина маршрута оказывается больше, чем длина самих данных, к которым он ведет. Также сложность добавления и модифицирования узлов, требуется пересмотр всей структуры БД.

Недостатком сетевой модели данных являются высокая сложность и  жесткость схемы БД, построенной на ее основе.

В течение многих лет преимущественно использовались плоские таблицы типа списков в Excel. В настоящее время наибольшее распространение при разработке баз данных (БД) получили реляционные модели данных.

В реляционных БД используется несколько  двумерных таблиц, в которых строки называются записями, а столбцы полями, между записями которых устанавливаются связи. Этот способ организации данных позволяет данные в одной таблице связывать с данными в других таблицах через уникальные идентификаторы (ключи) или ключевые поля.

Программы, которые предназначены для структурирования информации, размещения ее в таблицах и манипулирования данными называются системами управления базами данных (СУБД). Другими словами СУБД предназначены как для создания и ведения базы данных, так и для доступа к данным.

В настоящее время  насчитывается более 50 типов СУБД для персональных компьютеров. К наиболее распространенным типам СУБД относятся: MS SQL Server, Oracle, Informix, Sybase, DB2, MS Access и т. д.

Существует две большие  категории СУБД: «настольные» и «серверные». Настольные СУБД как таковые не содержат специальных приложений и сервисов, управляющих данными, взаимодействие с ними осуществляется с помощью файловых сервисов операционной системы.

Недостатки подобных СУБД не очевидны и становятся заметны, как правило, при росте хранимых объемов данных и увеличении числа пользователей. Обычно они проявляются в снижении производительности и в возникновении сбоев при обработке данных после некоторого времени использования клиентских приложений. Серверные СУБД поддерживают транзакции, позволяют создавать триггеры и хранимые процедуры (недоступные в базах данных Access).

В нашем случае СУБД была выбрана MySQL. MySQL является мощной СУБД для малых и средних приложений. Она широко распространена в сфере языков программирования для сети интернет. Так как реализация клиентского приложения потребует один из языков веб - программирования, то выбор данной СУБД более чем оправдан. Данная СУБД показывает хорошие показатели скорости и надежности, но уступает в функционале другим крупным СУБД. В отличие от других серверных решений, данная СУБД наиболее распространена на серверных площадках для сайтов и не требует существенных средств для развертывания платформы. Ещё одной из главных преимуществ данной СУБД перед другими является её бесплатность и наличие исходных текстов программы. Последнее, на что можно обратить внимание при выборе, является кросплатформенность. Это значит, что выбор платформы для сервера не повлияет на выбор СУБД к нему.

PHP - скриптовый язык программирования общего назначения, интенсивно применяемый для разработки веб-приложений. В настоящее время поддерживается подавляющим большинством хостинг-провайдеров и является одним из лидеров среди языков программирования, применяющихся для создания динамических веб-сайтов.

В области программирования для Сети PHP — один из популярных скриптовых языков (наряду с JSP, Perl и языками, используемыми в ASP.NET) благодаря своей простоте, скорости выполнения, богатой функциональности, кроссплатформенности и распространению исходных кодов на основе лицензии PHP.

Популярность в области  построения веб-сайтов определяется наличием большого набора встроенных средств для разработки веб-приложений. Основные из них:

  • автоматическое извлечение POST и GET-параметров, а также переменных окружения веб-сервера в предопределённые массивы;
  • взаимодействие с большим количеством различных систем управления базами данных (MySQL, MySQLi, SQLite, PostgreSQL, Oracle (OCI8), Oracle, Microsoft SQL Server, Sybase, ODBC, mSQL, IBM DB2, Cloudscape и Apache Derby, Informix, Ovrimos SQL, Lotus Notes, DB++, DBM, dBase, DBX, FrontBase, FilePro, Ingres II, SESAM, Firebird / InterBase, Paradox File Access, MaxDB, Интерфейс PDO);
  • автоматизированная отправка HTTP заголовков;
  • работа с HTTP авторизацией;
  • работа с cookies и сессиями;
  • работа с локальными и удалёнными файлами, сокетами.
  • обработка файлов, загружаемых на сервер;

 

Благодаря этим средствам  для разработки, а также легкостью  освоения языка, PHP был выбран для написания пользовательского приложения.

 

 

 

 

 

 

2 Разработка серверной части информационной системы

 

 

 

2.1 Анализ предметной  области

 

 

База данных создается  для всех желающих просмотреть информацию об интересующем программном обеспечении.

БД должна содержать:

  1. Иерархический каталог групп программного обеспечения
  2. Общую информацию о программном обеспечении
  3. Информацию об авторе данного ПО
  4. Графические изображения интерфейса ПО и его работы
  5. Совместимость с различными версиями операционных систем
  6. Возможность получения распечатки информации о ПО в одном из популярных форматов
  7. Возможность авторам программ редактировать свои программы

 

В соответствии с предметной областью система строится с учётом следующих  особенностей:

1) Каждое ПО может  содержать множество графических  изображений

2) Один автор может  разрабатывать множество программ

3) Каждое ПО относится  к строго определенной группе  и типу

4) ПО может работать  на различных типах операционных  систем

 

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

 

Программы. Атрибуты:

  • Название
  • Автор
  • Категория
  • Лицензия
  • Язык
  • Версия
  • Список ОС
  • Стоимость
  • Ссылка
  • Сайт автора

 

Скриншоты. Атрибуты:

  • Название программы
  • Бинарный файл

 

 

Редакторы. Атрибуты:

  • Логин
  • Пароль
  • Тип администратора

 

 

2.2 Требования к функциям  разрабатываемой БД

 

 

БД должна выполнять  следующие функции:

 

Функции администратора:

  1. Назначение и снятие редакторов
  2. Добавление программ в каталог
  3. Изменение информации о программах
  4. Удаление из каталога

 

Функции редактора:

  1. Добавление программ в каталог
  2. Изменение информации о программах
  3. Удаление из каталога

 

Выводы. Система должна обеспечивать:

  1. Поиск по названию программы
  2. Поиск по описанию программы
  3. Поиск по авторам
  4. Вывод по категориям
  5. Поиск по типу лицензии

 

 

2.3 Концептуальное проектирование  базы данных

 

 

Концептуальное проектирование - сбор, анализ и редактирование требований к данным. Начинается с анализа ПО, включает анализ концептуальных требований и информационных потребностей, выявление информационных объектов (ИО) и связей между ними, построение концептуальной модели (схемы) данных. Эта модель данных создается на основе информации, записанной в спецификациях требований пользователей. Концептуальное (инфологическое) проектирование базы данных абсолютно не зависит от таких подробностей ее реализации, как тип выбранной целевой СУБД, набор создаваемых прикладных программ, используемые языки программирования, тип выбранной вычислительной платформы, а также от любых других особенностей физической реализации. При разработке концептуальная модель данных постоянно подвергается тестированию и проверке на соответствие требованиям пользователей. Созданная концептуальная модель данных является источником информации для этапа логического проектирования базы данных.

Информация о работе ПРОЕКТИРОВАНИЕ БАЗЫ ДАННЫХ КАТАЛОГА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ