Галерея художественных работ кафедры ДПИ

Курсовая работа по предмету «Программирование»
Информация о работе
  • Тема: Галерея художественных работ кафедры ДПИ
  • Количество скачиваний: 7
  • Тип: Курсовая работа
  • Предмет: Программирование
  • Количество страниц: 22
  • Язык работы: English language (Английский)
  • Дата загрузки: 2014-12-22 11:44:52
  • Размер файла: 752.66 кб
Помогла работа? Поделись ссылкой
Информация о документе

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

Если Вы являетесь автором текста представленного на данной странице и не хотите чтобы он был размешён на нашем сайте напишите об этом перейдя по ссылке: «Правообладателям»

Можно ли скачать документ с работой

Да, скачать документ можно бесплатно, без регистрации перейдя по ссылке:

ПРИДНЕСТРОВСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
им. Т.Г. ШЕВЧЕНКО
РЫБНИЦКИЙ ФИЛИАЛ
КАФЕДРА «ФИЗИКИ, МАТЕМАТИКИ И ИНФОРМАТИКИ »



Курсовая работа
по дисциплине
«Технология разработки программного обеспечения»
на тему:
«Галерея художественных работ кафедры ДПИ»


Выполнили:
студенты IV курса
специальности ПОВТ и АC

Проверил:
ст. преподаватель







г. Рыбница
2014г.
СОДЕРЖАНИЕ

ГЛАВА I. ТЕОРЕТИЧЕСКИЙ РАЗДЕЛ 4
1.1. Описание и постановка задачи 4
1.2. Обзор информации, посвященной области исследования 5
ГЛАВА II. ПРАКТИЧЕСКИЙ РАЗДЕЛ 7
2.1. Описание системы web-приложения «Галерея изображений» 7
2.2. Требования к окружению 7
2.2.1. Аппаратные требования 7
2.2.2. Программные требования 8
2.3. Календарный график проекта 8
2.4. Документ оценки рисков 9
2.5. Диаграмма классов 10
2.6. Диаграммы взаимодействий 11
2.7. Диаграмма прецедентов 14
2.8. Разработка страницы «Главная» 15
2.8. Разработка страницы «Авторы» 16
2.9. Разработка страницы «Войти» 17
2.10. Разработка страницы «Регистрация» 18
ЗАКЛЮЧЕНИЕ 20
СПИСОК ЛИТЕРАТУРЫ 21
ПРИЛОЖЕНИЕ 22












ВВЕДЕНИЕ

Современное развитие информационных технологий привело к развитию компьютерных сетей для хранения и передачи информации. В процессе появления Интернета веб-приложения стали стремительно развиваться.
Просмотр и загрузка фотографий одно из самых распространенных видов занятий людей в интернете. Программные продукты могут обеспечивать демонстрацию и редактирование изображений.


*****************************************************

Целью курсовой работы является создание программного продукта, который позволяет просматривать, удалять, добавлять и редактировать фотографии, используя сеть Интернет.
В рамках поставленной цели были поставлены следующие задачи:
• изучить материалы о разработке web-приложений;
• изучить литературу по языку PHP;
• научится работать с СУБД MySql;
• разработать алгоритмы добавления, вставки, редактирования, с помощью высокоэффективного, основанного на компонентной структуре php-фреймворка для быстрой разработки крупных веб-приложений;
• создать программную реализацию разработанного проекта;
• провести тестирование программного продукта.


ГЛАВА I. ТЕОРЕТИЧЕСКИЙ РАЗДЕЛ

1.1. Описание и постановка задачи

Художественная галерея представляет собой просмотр, редактирование, загрузку, комментирование фотографий. Выставленные произведения обычно предлагаются для просмотра и оценки в виде комментариев.
Любой пользователь может зайти и просмотреть фото художественные работы . Администратор сайта загружает на сервер работы художников, делает запись об авторе, названии работы. Все другие пользователи могут в любое время зайти, найти нужный рисунок и оценить его в виде комментария.
Просмотр фото имеет режим предварительного и полного просмотра. При первом виде просмотра картинка заметно меньше оригинала. Это нужно для общего видения работ и облегчения процесса визуального поиска. При полном отображении изображения зарегистрированный пользователь может оставлять свой личный комментарий, который виден всем.
Поиск фото осуществляется по тегам и с помощью поля ввода и кнопки в приложении. Процесс поиска осуществляемый полем ввода, который предполагает занесение текстовой информации и нажатие кнопки «Искать». После нажатия осуществиться выборка данных, согласно введенной информации.
Поиск также можно выполнять по переходу по тегам. Для этого достаточно осуществить нажатие на интересующий тег. Теги располагаются в колонке списка тегов, и под самой фотографией. По нажатию на поле с ссылкой выполниться поиск.
На сайте расположена страница информации об авторах работ. Администратор сайта в праве добавить нового автора и краткую информацию, в виде характеристики. Любой пользователь может зайти и просмотреть данную страницу.
Есть возможность удалять и редактировать работы.
1.2. Обзор информации, посвященной области исследования

При программировании сайтов следует использовать сторонние библиотеки , к примеру для загрузки и обработки форм (валидация, сохранение, работы с базой данных). Многие из таких библиотек которые приходилось использовать в проектах выделяются в отдельную папку и включаются в проект. Использование фреймворка облегчает реализацию этих задач.
Для разработки веб-проиложения был использован высокоэффективный, основанный на компонентной структуре php-фреймворк (Yii Framework).
Yii — это фреймворк для веб-программирования общего назначения, который может быть использован для разработки практически любых веб-приложений. Благодаря своей легковесности и наличию продвинутых средств кэширования, Yii особенно подходит для разработки приложений с большим потоком трафика, таких как порталы, форумы, системы управления контентом (CMS), системы электронной коммерции.
Основными особенностями yii фреймворка являются :
• MVC-архитектура;
• Работа с базами данных;
• Поддержка кэширования на разных уровнях;
• Большое количество встроенных компонентов;
• Возможность простого подключения сторонних библиотек;
• Интеграция с jQuery;
Фреймворк предлагает нам уже встроенные классы для: работы с базой данных, создания функциональных форм, валидации, логирования. Все эти классы можете легко использовать в проекте, при этом их подключение и использование будет более простым.
Также преимуществом фреймворка является отличная поддержка расширений, которая позволяет подключать сторонние библиотеки и структурирование архитектуры приложения. Фреймворк содержит в себе перечень стандартных папок в которых предполагается размещать необходимые части вашего приложения (отдельная папка для тем, контроллеров, расширений, конфигурационных файлов).
Главной привилегией Yii является отличная поддержка объектно-ориентированного программирования, скорость работы. Фреймворк включает в себя большой набор библиотек, облегчают создание полноценного веб- приложения отвечающего всем современным стандартам (интегрированное использованием Ajax, встроенная поддержка интернационализации приложения, простой инструмент работы с базой данных).
Количество строк истоходного кода php кода может быть существенно сокращено благодаря встроенным методам фреймворка.
Превосходство Yii над другими фреймворками заключается в эффективности, широких возможностях и качественной документации. Yii изначально спроектирован очень тщательно для соответствия всем требованиям при разработке серьёзных веб-приложений. Yii не является ни побочным продуктом какого-либо проекта, ни сборкой сторонних решений. Он является результатом большого опыта авторов в разработке веб-приложений, а также их исследований наиболее популярных веб-фреймворков и приложений.
Yii является бесплатным программным обеспечением и распостраняется под лицензией.







ГЛАВА II. ПРАКТИЧЕСКИЙ РАЗДЕЛ

2.1. Описание системы web-приложения «Галерея изображений»

Проектная группа: все работы по проекту возлагаются на студентов IV курса РФ ПГУ им. Т. Г. Шевченко Мовчан Андрея, Писарькова Александра и Сивак Адриана.
Сроки: на все разработку приложения отводиться 1 учебный семестр.
Программный продукт предназначен для реализации онлайн галереи изображений.
Перечень работ выполняемых в процессе разработки системы:
 Проектирование системы;
 Кодирование;
 Тестирование и отладка;
 Ввод в эксплуатацию.
Возможности программного продукта:
 Позволяет добавлять и удалять работы на сервер;
 Возможность просмотра изображения;
 Допускается добавление комментария к работе;
 Предлагается поиск изображений;
 Возможность создания списка авторов работ.
2.2. Требования к окружению

2.2.1. Аппаратные требования

Минимальная конфигурация аппаратных средств для нормального функционирования программы должна содержать:
 Монитор;
 Клавиатура;
 Мышь;
 Подключение к сети Интернет
2.2.2. Программные требования

Для функционирования программного продукта на компьютере должно быть установлено следующее ПО:

 Операционная система;
 Браузер (любые версии Opera, Google Chrome, Mozila FireFox, Microsoft Internet Explorer(не ниже 8-ой версии), Safari)
2.3. Календарный график проекта

Таблица 1
Календарный график проекта

Наименование работы Длительность (в рабочих днях) Дата начала Дата окончания Результат
Проектирование 10 07.03.2014 17.03.2014 Функциональные спецификации
Создание Базы Данных 15 17.03.2014 1.04.2014
Создание страниц «Регистрация» и «Авторизация» 3 23.05.2014 26.05.2014
Тестирование страниц «Регистрация» и «Авторизация» 1 28.05.2014 29.05.2014 Тестирование прошло успешно
Создание страницы «Предварительный просмотр фотографий» 2 30.05.2014 31.05.2014
Тестирование страницы «Список авторов» 2 1.06.2014 3.06.2014 Тестирование прошло успешно
Создание формы «Добавить автора» 2 4.06.2014 6.06.2014
Создание формы «Добавить изображение» 1 7.06.2014 8.06.2014
Создание формы «Удалить автора»
1 8.06.2014 9.06.2014 Тестирование прошло успешно
Тестирование и стабилизация 2 9.05.2013 11.05.2013 Функциональная версия системы


2.4. Документ оценки рисков
Таблица 2
Оценка рисков

Формулировка риска (Шкала) (Шкала)
№ Причина Последствие Вероятность Влияние Ущерб Cмягчение
1 Недостаточные навыки программирования на PHP. Выход из графика, срыв срока выпуска продукта 50 30 100 Выявить пробелы и подобрать нужный учебный материал для самостоятельного изучения.
2 Изменения в технологии Увеличится затрачиваемое на разработку время 50 40 200 Организовать анализ требований, целей, функций к ПО
3 Затянутый временной график проекта Потеря финансирования в конце года 60 20 100 Регулярный контроль состояния проекта
4 Риск неудовлетворен-ности заказчика Отказ заказчика от ПО 40 20 100 Разъяснение заказчику возможностей и результатов оптимизации еще до начала создания ПО
5 Не реализация ожидаемых функций Отказ заказчика от ПО или необходимость доработки ПО 60 30 100 Предоставление постоянного отчета о проделанной работе

Примем следующую шкалу для оценки вероятности:
 30% - низкая;
 60% - средняя;
 70% - высокая;
Примем следующую шкалу для оценки влияния (перерасход средств):
 10 - низкая (до 1%);
 20 - средняя (до 5%);
 30 - высокая (до 10%);
 40 - критическая (свыше 10%);

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

2.5. Диаграмма классов

Класс – это основной строительный блок программного средства. Каждый класс имеет название, атрибуты и операции.
Между классами UML и программными классами есть соответствие, являющееся основой для автоматической генерации программных кодов или для выполнения реинжиниринга. Класс на диаграмме показывается в виде прямоугольника, разделенного на три области. В верхней содержится название класса, в средней – описание атрибутов (свойств), в нижней – названия операций – услуг, предоставляемых объектами этого класса.
При построении модели предметной области, на диаграмму выносятся основные исполнители прецедентов (актёры), тем самым преобразуясь в классы, и создаются основные классы, являющиеся сущностями, с которыми происходит взаимодействие в системе. Для каждого класса прописываются атрибуты. Между классами проставляются связи, которые показывают их взаимодействия. Данные связи подписываются, как один класс влияет на другой и проставляется количество взаимодействий.


Рис.2. Основные классы и компоненты
2.6. Диаграммы взаимодействий

Диаграмма последовательностей учитывает фактор времени и показывает как система функционирует во времени.
Последовательность выполняемых действий (рис.3):
 Пользователь регистрируется в системе;
 Пользователь авторизуется в системе;
 Пользователь открывает страницу со списком фотографий;
 Пользователь открывает страницу со списком авторов;
 Пользователь добавляет комментарий;
 Пользователь выходит из учетной записи.



Рис.3. Диаграмма последовательностей





Рис.4. Диаграмма коопераций

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

Прецедент — возможность моделируемой системы (часть её функциональности), благодаря которой пользователь может получить конкретный, измеримый и нужный ему результат. Прецедент соответствует отдельному сервису системы, определяет один из вариантов её использования и описывает типичный способ взаимодействия пользователя с системой. На диаграмме прецедентов (рис.5) показана совокупность прецедентов и актера.
Актером обозначается игрок, взаимодействующий с системой посредством ассоциативных связей с прецедентами. Актер графически обозначается в виде фигуры человека, под которым словесно обозначена его роль.
Прецеденты на диаграмме обозначаются небольшими эллипсами с подписью и выполняют какое-либо действие.




Рис.5 Диаграмма прецедентов


2.8. Разработка страницы «Главная»

На данной странице (рис.7) отображается список работ, которые находятся в режиме предпросмотра, поле для поиска. В верхней части расположено поле поиска, и кнопка «Искать». В приложении реализовано два вида варианта поиска изображений:
• по тегам;
• с помощью поля ввода;



Рис.7. Страница «Главная»

Справа находиться список операций, который может осуществить пользователь и список тегов всех работ. Внизу находиться поле для листинга страниц с изображениями. На одной странице может находиться до трех фотографий.
2.8. Разработка страницы «Авторы»

На данной странице находиться список всех авторов. Статус автора могут получить только зарегистрированные пользователи. Авторов может добавлять только администратор сайта. На форме добавления автора (рис.8) находятся поле ввода «Имя автора» и «Об авторе» и также кнопки «Загрузить файл». При заполнении всех полей ввода и нажатии кнопки «Добавить» выполнится добавление пользователя в список авторов.

Рис.8. Форма добавления автора




Рис.9. Список авторов








Рис.10. Форма информации об авторе

После добавления автора можно просмотреть страницу списка авторов(рис.9). При нажатии на любого из авторов открывается форма профиля. Здесь указываются имя, фото пользователя и его краткое описание(рис.10).
2.9. Разработка страницы «Войти»



Рис.11. Страница входа на сайт


На данной странице (рис.11) два текстовых поля «Username» ,«Password» и кнопка «Login». При верном заполнении полей и нажатии кнопки произведется вход на сайт под своей учетной записью.
2.10. Разработка страницы «Регистрация»


Рис.12. Страница регистрации


На данной странице (рис.12) отображаются поля ввода, которые обязательно нужно заполнить для удачной регистрации. Нажав на кнопку «Зарегистрироваться» проверяется существует ли такая комбинация логина и почтового адреса. Если данные не совпадают с уже существующими, на почту приходит письмо с подтверждением регистрации. После подтверждения регистрации данные заносятся в базу, создается новая учетная запись и в последствии зарегистрированный может быть добавлен в список авторов работ.




Рис. 13. Структура базы данных













ЗАКЛЮЧЕНИЕ
В результате работы было получен программный продукт, реализующий все возложенные на него функции. Для описания данного продукта были использованы диаграммы использования последовательности, классов. Создание диаграмм, графиков, описаний занимают много времени, но они заставляют глубже разобраться в программном продукте, и сократить время разработки программы, избавившись от лишней работы по программированию ненужных функций.
В ходе работы для достижения цели в качестве средств разработки был использован yii фреймворк. Он позволил максимально применить концепцию повторного использования кода и существенно ускорить процесс веб-разработки, а также предоставил удобную среду для проекта с большим и хорошо расширяемым функционалом.
В работе рассмотрены предметная область и проблемы, стоявшие перед разработчиками. Выполнена постановка задачи и выявлены требования к программному продукту. Произведено описание структуры и алгоритма программного продукта.
Поставленная цель была достигнута, так как был создан программный продукт, который позволяет пользователям просматривать, искать, оценивать, и загружать изображения.
Решены следующие задачи:
• получены знания об разработки веб-проложения с помощью yii фреймворка ;
• изучена литература по языку PHP;
• получены навыки работы с СУБД MySql;
• разработано веб-приложение «Галерея изображений»
• создана программная реализация разработанного алгоритма;
• проведено тестирование программного продукта.

СПИСОК ЛИТЕРАТУРЫ

1. Гук А.В. Лекции по курсу «Технология разработки и проектирования ПО»
2. Мишель Е. Дэвис и Джон А. Филипс. Изучаем PHP и MySQL.- Символ-Плюс, 2008.
3. А.С.Макаров. Программирование. Издательство: ДМК Пресс ,2013.
4. Фленов М. Е. РНР глазами хакера. СПб.: БХВ-Петербург, 2005.
5. Николай Прохоренок. HTML, JavaScript, PHP и MySQL. Джентельменский набор Web-мастера.- БХВ-Петербург, 2010.
6. Дунаев В. HTML, скрипты и стили. – 3-е изд. – СПб: БХВ-Петербург, 2011.
7. Что такое Yii Framework. [Электронный ресурс]: Режим доступа: http://www.yiiframework.com/doc/guide/1.1/ru/quickstart.what-is-yii
8. Что такое фреймворк. [Электронный ресурс]: Режим доступа:
http://www.dbhelp.ru/what-is-framework/page/













ПРИЛОЖЕНИЕ