Автор: Пользователь скрыл имя, 05 Марта 2013 в 10:01, дипломная работа
Постоянное усовершенствование новых технологий и огромные объёмы информации, создаваемые различными источниками, поднимают проблему качественного актуального образования. Использование таких средств предоставления данных, как интернет, имеет несколько сильных положительных сторон. В отличие от печатных изданий, использование электронных средств распространения информации позволяет решить проблему предоставления обучающемуся современных учебных материалов практически без задержки во времени. При необходимости, может производиться корректировка уже имеющихся материалов без существенных затрат. Доступ к учебным материалам может быть получен в любом месте нахождения студента в произвольный момент времени.
Введение 6
1 Постановка задачи и обзор существующих решений 8
1.1 Требования к системам дистанционного обучения 8
1.2 Обзор некоторых существующих решений 9
1.3 Выбор и обоснование решения поставленной задачи 18
1.4 Основные преимущества и возможности системы 19
2 Разработка системы 20
2.1 Проектирование структуры системы 20
2.2 Создание базового приложения Rails 20
3 Реализация дополнительной функциональности и работа с системой 32
3.1 Идентификация пользователей 32
3.2 Контроль уровня доступа 33
3.3 Загрузка файлов на сервер и работа с ними 34
3.4 Работа с комментариями 36
3.5 Начальная настройка 36
3.6 Создание пользователя 37
3.7 Обслуживание системы 38
4 Технико-экономическое обоснование разработки клиент-серверного приложения «обучающая система с использованием интернет-технологий» 39
4.1 Краткая характеристика программного продукта 39
4.2 Расчет сметы затрат, себестоимости и отпускной цены ПО 39
4.3 Расчет экономического эффекта от применения ПО пользователем 48
4.4 Вывод 52
5 Реализация эргономических требований к конструкции и организации рабочего места в системе “человек - тех.средство” 53
5.1 Характеристика трудового процесса технического средства. Функции работника 53
5.2 Выбор и обоснование рабочего положения работника, рабочей поверхности, сидения (рабочего кресла) 54
5.3 Проектирование сенсомоторного поля рабочего места, т.е. пространства с размещенными в нем средствами отображения информации, органами управления и другими техническими средствами с учетом зон досягаемости 56
Заключение 61
Список использованных источников 62
Если требуется ограничить доступ только к определённым методам контроллера, используется следующая запись: «before_filter :confirm_editor, :only => [:new, :edit, :update, :delete, :destroy, :erase_comment, :erase]». Это выражение позволяет получить доступ к методам, перечисленным в квадратных скобках пользователям, положительно прошедшим метод «confirm_editor», подтверждающий их право на редактирование материалов.
Кроме выдачи непосредственно HTML-документов, необходимо обеспечить возможность предоставлять пользователям другие форматы данных, например документы в PDF-формате, аудио и видеозаписи.
SQLite позволяет хранить
в базе данных текстовые и
бинарные данные размером
Поэтому в базе данных будет
храниться лишь текстовая строчка,
в которой указан адрес файла
на сервере. При необходимости отобразить
определённый файл контроллер из локального
адреса файла формирует
Rails имеет встроенные возможности создавать тэги для изображений а так же формировать HTML5-тэги для отображения мультимедийных файлов (аудио и видеоформаты).
Для того, чтобы загружаемый на сервер файл не переписал уже имеющийся файл с тем же именем, при загрузке к имени файла добавляется текущее время. А для удобной организации хранения при загрузке анализируется расширение файла, после чего он записывается в одну из папок: /public/audios, /public/images, /public/uploads, /public/videos. Код проверки типа файла и загрузки его на сервер приведён ниже:
if params[:lecture][:file]
file = params[:lecture][:file]
dt = DateTime.now
if file.original_filename[-4..-1] == '.jpg' || file.original_filename[-5..-1] == '.jpeg' || file.original_filename[-4..-1] == '.gif' || file.original_filename[-4..-1] == '.png'
filepath = Rails.root.join("public", "images", dt.to_formatted_s(:number) + '_' + file.original_filename)
elsif file.original_filename[-4..-1] == '.avi' || file.original_filename[-4..-1] == '.flv' || file.original_filename[-4..-1] == '.mp4' || file.original_filename[-4..-1] == '.ogg' || file.original_filename[-4..-1] == '.ogv'
filepath = Rails.root.join("public", "videos", dt.to_formatted_s(:number) + '_' + file.original_filename)
elsif file.original_filename[-4..-1] == '.mp3' || file.original_filename[-4..-1] == '.aac' || file.original_filename[-4..-1] == '.wav'
filepath = Rails.root.join("public", "audios", dt.to_formatted_s(:number) + '_' + file.original_filename)
else
filepath = Rails.root.join("public", "uploads", dt.to_formatted_s(:number) + '_' + file.original_filename)
end
File.open(filepath, 'wb:binary') do |f|
f.write(file.read)
end
end
В случае, если веб-браузер не поддерживает HTML5-тэги, а так же для быстрого и удобного скачивания файла на локальный компьютер, создаётся кнопка «Скачать файл» с указанием размера файла. Нажатие на эту кнопку вызывает метод «download», который отсылает пользователю требуемый файл.
Комментарии добавляются
непосредственно к лекции и отображаются
на одной странице с нею. Для этого
в представлении «Show» для
Для того, чтобы облегчить
работу с комментариями, используется
метод «fresh» в контроллере
Необходимость установки
системы как таковая
Так как использовалась база данных SQLite3, встроенная поддержка которого полностью реализована в Rails, нет необходимости в настройке и администрировании сервера баз данных.
Для использования может
понадобиться изменить некоторые ссылки
и названия, отображаемые при работе
с системой. Для этого можно отредактировать
соответствующие тэги в файле /app/views/layouts/
Также создана дополнительная модель Settings в которой могут храниться настройки сайта. В демонстрационных целях в этой модели присутствуют два поля: название и ссылка на «родительский» сайт.
Непосредственно сразу после первого запуска в системе не присутствует ни одного пользователя. Так как создавать и редактировать пользователей через интерфейс системы могут только уже существующие пользователи с правами администратора, то необходимо для создания пользователя использовать интерфейс командной строки Rails.
Для этого необходимо в
терминале операционной системы
перейти в каталог, где размещена
установленная обучающая
Для создания нового пользователя необходимо воспользоваться командой «user = User.new», в результате чего будет создан новый экземпляр класса User. После этого можно полям объекта user присвоить актуальные данные: имя, логин, пароль и администраторские права. Для сохранения этого экземпляра класса используется метод user.save, при исполнении которого в базе данных будет создана запись с указанными значениями параметров. После исполнения этих действий можно использовать web-интерфейс системы. Этот процесс показан на рисунке 3.2.
Рисунок 3.2 – Создание первой записи пользователя
По различным причинам может произойти так, что могут быть нарушены связи между объектами. Например, в системе могут существовать лекции, которые не связаны с какими либо курсами.
Для поиска таких аномалий можно использовать программную консоль Rails. Алгоритм действий в данном случае следующий:
После выполнения этих действий
будет создан список лекций, не принадлежащих
ни одному курсу. Эти лекции не отображаются
в обычном web-интерфейсе системы, но присутствуют
в базе данных, потребляя аппаратные ресурсы.
После создания списка этих лекций, их
можно удалить, либо связать с существующим
курсом для дальнейшей работы. Подобный
алгоритм может использоваться для определения
нарушения в зависимостях любых моделей.
В данном дипломном проекте было разработано клиент-серверное приложение, предназначенное для создания, хранения и выдачи по запросу информации в БД с минимальными требованиями для использования.
Данное ПО относится к типу ПО функционального назначения и направлено на повышение производительности труда пользователей ПО, относится к 3-й группе сложности. По степени новизны ПО относится к группе “В” с коэффициентом Кн = 0,7 (являющееся развитием определенного параметрического ряда ПО ВТ). Т.к. ПО разрабатывается на платформе “x86-32” для операционных систем Server 2003, которая является типовой программой и охватывает реализуемые функции со степенью от 40% до 60%, то коэффициент использования типовых программ принимается равным 0,7 (Кт = 0,7). Дополнительный коэффициент сложности выбирается для ПО, функционирующего в расширенной операционной среде, и принимается равным 0,07 (Ксл = 0,07).
Исходные данные для расчета затрат, связанных с разработкой ПО, приведены в таблице 4.1.
Стоимостная оценка ПО у разработчиков предполагает составление сметы затрат, которая включает следующие статьи:
На основании сметы затрат рассчитывается себестоимость и отпускная цена ПО.
Таблица 4.1 – Исходные данные
Наименование показателей |
Буквенное обозначение |
Единицы измерения |
Кол-во |
Коэффициент новизны |
КН |
0,7 | |
Группа сложности |
3 | ||
Дополнительный коэффициент сложности |
КСЛ |
0,07 | |
Поправочный коэффициент, учитывающий использование типовых программ |
КТ |
0,7 | |
Установленная плановая продолжительность разработки |
ТР |
лет |
0,5 |
Годовой эффективный фонд времени |
ФЭФ |
дней |
230 |
Продолжительность рабочего дня |
ТЧ |
ч |
8 |
Месячная тарифная ставка 1-го разряда |
ТМ1 |
руб. |
118000 |
Коэффициент премирования |
КП |
1,25 | |
Норматив дополнительной заработной платы |
НЗД |
% |
15 |
Ставка отчислений в фонд социальной защиты населения |
НЗСЗ |
% |
34 |
Ставка налога, уплачиваемого единым платежом от начисленной заработной платы |
Нне |
% |
0.7 |
Норматив расходов на научные командировки |
Нрнк |
% |
30 |
Норматив прочих затрат |
НПЗ |
% |
20 |
Норматив накладных расходов |
НРН |
% |
100 |
Уровень рентабельности |
Урнi |
% |
30 |
Ставка налога на добавленную стоимость |
НДС |
% |
20 |
Норматив расходов на сопровождение ПО |
РСА |
% |
10 |
Налог на прибыль при отсутствии льгот |
Нn |
% |
24 |
Объем ПО определяется на основании информации о функциях ПО. По каталогу функций определяется объем функций. Исходные данные для определения объема ПО приведены в таблице 4.2.
Таблица 4.2 – Характеристика функций и их объем.
Номер функции |
Содержание функции |
Объем (усл. маш. ком.) |
101 |
Организация ввода информации |
150 |
102 |
Контроль, предварительная обработка и ввод информации |
450 |
109 |
Организация ввода/вывода информации в интерактивном режиме |
320 |
203 |
Формирование баз данных |
2180 |
204 |
Обработка наборов и записей базы данных |
2670 |
207 |
Манипулирование данными |
9550 |
210 |
Загрузки базы данных |
2780 |
305 |
Обработка файлов |
720 |
507 |
Обеспечение интерфейса между компонентами |
970 |
703 |
Расчет показателей |
460 |
Всего |
20250 |
Используя исходные данные, рассчитаем общий объем программного комплекса:
(4.1)
,
где – общий объем ПО;
– объем функции ПО;
– общее число функций.
VO= 20250 (строк исходного кода)
При объеме 20250 строк исходного кода для данного ПО (3-я группа сложности ПО) соответствует нормативная трудоемкость 387 человеко-дней. Так как используются современные ПЭВМ, нормы времени применяются с поправочным коэффициентом 0,7 = 0.7*387 = 271 человеко-дня.
Общая трудоемкость ПО (ТО) рассчитывается на основе нормативной путем введения дополнительного коэффициента сложности (КСЛ):
(4.2)
,
где – общая трудоемкость ПО;
– нормативная трудоемкость;
– дополнительный коэффициент сложности ПО.
271+271*0,07=290 человеко-дней
Информация о работе Создание обучающей системы с использованием интернет-технологий