Разработка виртуальной лабораторной работы по дисциплине "Языки программирования"

Автор работы: Пользователь скрыл имя, 03 Июня 2013 в 13:45, курсовая работа

Краткое описание

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

Содержание

Введение
1.Анализ требований для разработки виртуальной лаборатории
1.1 Методологические требования к проектирования виртуальной лаборатории
1.2 Обзор существующих технологий и разработок виртуальных лабораторий
2.Проектирование виртуальной лаборатории
2.1 Проектирование ВЛ с использованием объектного моделирования
2.2 Обзор и обоснование выбора инструментальных средств создания виртуальной лаборатории.
3. Техническая реализация виртуальной лаборатории
3.1 Разработка программных модулей
3.2 Тестирование виртуальной лаборатории

Прикрепленные файлы: 1 файл

1 глава ДП 1 вариант.docx

— 64.53 Кб (Скачать документ)



 


СОДЕРЖАНИЕ

 

Введение 
1.Анализ требований для разработки виртуальной лаборатории 
1.1 Методологические требования к проектирования виртуальной лаборатории  
1.2 Обзор существующих технологий и разработок виртуальных лабораторий  
2.Проектирование виртуальной лаборатории 
2.1 Проектирование ВЛ с использованием объектного моделирования 
2.2 Обзор и обоснование выбора инструментальных средств создания виртуальной лаборатории. 
3. Техническая реализация виртуальной лаборатории 
3.1 Разработка программных модулей 
3.2 Тестирование виртуальной лаборатории                                                                                                                                                                    

 

 

 

 

 

 

 

 

 

ВВЕДЕНИЕ

 

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

Современные средства визуализации и  высокая степень интерактивности  позволяют детально изучить любой процесс алгоритма. Следует отметить, что необходимо различать понятия «виртуальной компьютерной лаборатории» и «виртуальной удаленной лаборатории». К сожалению, возникла некоторая путаница, связанная с тем, что оба вида лабораторий часто называются одним термином «виртуальная лаборатория», хотя это принципиально различные вещи.

Основу виртуальной компьютерной лаборатории составляет компьютерная программа или связанный комплекс программ, осуществляющий компьютерное моделирование некоторых процессов. Под виртуальной удаленной лабораторией или лабораторией для совместной удаленной работы понимают «сетевую организационную структуру нескольких групп ученых, принадлежащих к различным научным центрам и связанных между собою отношениями взаимовыгодного сотрудничества, благодаря сети Интернет».              Однако такая система как алгоритмизация тяжело поддается исследованию и изучению обычными теоретическими методами. Наиболее мощным средством для улучшения понимаемости является визуализация алгоритмов при помощи программных средств на ПК, что позволяет получить ряд преимуществ: облегчить изучение темы, улучшить эргономические характеристики алгоритмов и так далее.

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

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

На сегодняшний день отечественный опыт применения web-технологий для разработки научно-исследовательских программ ограничен. Коллективами ученых Новосибирского государственного университета, Московского энергетического института, Института земного магнетизма, ионосферы и распространения радиоволн РАН разрабатываются программные комплексы, работающие в режиме on-line и направленные на решение узкого круга прикладных задач. Присутствует ряд проблем, связанных с реализацией web-приложений. В основном это проблемы визуализации данных, в частности проблемы анимации, многопользовательского режима, интерактивности.

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

 

 

1 АНАЛИЗ ТРЕБОВАНИЙ ДЛЯ РАЗРАБОТКИ ВИРТУАЛЬНОЙ

ЛАБОРАТОРИИ

 

Не смотря на то, что  понятие «виртуальная лаборатория» стало употребляться еще в 90-х годах прошлого столетия, до сих пор не сложилось неоднозначного определения. Имеется множество факторов, влияющих на взгляды авторов-разработчиков виртуальных вычислительных сред . Выбор того или иного варианта организации виртуальной лаборатории определяется, прежде всего, классом задач, для решения которых предназначения лаборатория. Большую роль в выборе конфигурации играет и предметная область, для которой она предназначена. Рассматривая образовательную сферу, немаловажно учесть имеющуюся вычислительную базу при построении виртуальной лаборатории.

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

В нашем случае в общий  смысл понятия виртуальной лаборатории алгоритмизации в компьютерных технологиях вкладывается следующее: виртуальная лаборатория представляет собой программный комплекс, действующий через Internet, обеспечивающий удаленному пользователю взаимодействие с алгоритмическими моделями изучаемых объектов и действий.

 

1.1 Методологические требования  к проектированию виртуальной лаборатории

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

В общем виде виртуальная лаборатория состоит  из семи разделов: «Линейный алгоритм», «Алгоритм ветвления», «Циклический алгоритм», «Циклический алгоритм с заданным количеством итераций», «Пузырьковый метод сортировки», «Сортировки методов выборки». Разделы обозначены по способу описания модели. Рассмотрим каждый из разделов.

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

Таблица 1 – Условные обозначения  в схемах линейных алгоритмов

Название

Обозначение

Действие

Начало, конец

Начало или конец

 программы

Процесс

Обработка данных

Данные

Ввод или вывод 

информации.

Комментарий

Пояснения к действиям

Документ

Вывод результатов


 

В линейном  алгоритме операции выполняются последовательно, в порядке их записи. Каждая операция является самостоятельной, независимой от каких-либо условий. На схеме блоки, отображающие эти операции, располагаются в линейной последовательности.

Второй раздел «Алгоритм ветвления» посвящен моделям, рассматриваемая стандарты, которые распространяются на условные обозначения (символы) в схемах алгоритмов ветвления, программ, данных и систем и устанавливает правила выполнения схем, используемых для отображения различных видов задач обработки данных и средств их решения.

Таблица 2 – Условное обозначение  выбора условия в схемах алгоритмов ветвления

Название

Обозначение

Действие

Решение

Выбор направления выполнения алгоритма в зависимости от истинности или ложности некоторых условий.


 

Алгоритм называется ветвящимся, если для его реализации предусмотрено несколько направлений (ветвей). Каждое отдельное направление алгоритма обработки данных является отдельной ветвью вычислений.

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

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

Таблица 3 – Условное отображение  цикла в схемах циклического алгоритма

Название

Обозначение

Действие

Подготовка

Организация счётного цикла. Применяется в том случае, когда известно число повторений цикла.


 

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

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

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

При разработке программного продукта, используя стандарты  Web, возникает следующий вопрос: можно ли результаты решения конкретной задачи представить на принимающей стороне в «адекватном» виде, для последующего принятия решения (интерпретация, визуализация, промежуточные вычисления и так далее). Сетевой уровень ставит ряд вопросов, связанных с упаковкой (сериализацией) и передачей (маршалингом) данных в среде с различными «логическими» и физическими параметрами. Здесь под «логическими» понимаются параметры сетевой среды, воздействующие непосредственно на транспортировку данных, такие как наличие средств защиты (proxy-серверы и другое.), особенности маршрутизации и так далее, а под физическими параметрами -технические характеристики сети (пропускная способность и другие). Анализируя ту или иную задачу, нужно рассмотреть такой немаловажный аспект как ее последующее распределение по логическим уровням системы. Имеется в виду разделение на составные части: расчетная часть, подготовка диаграмм и графиков, запросы данных и тому подобное. Построение логических уровней системы является приоритетной задачей во всем процессе проектирования, так как от эффективного распределения программного комплекса зависит его скорейшая, а главное, непротиворечивая разработка.

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

  1. Обеспечение условий для эффективного разделения на логические уровни системы при постановке задачи, то есть формирование некоторых программных блоков согласно тематике задачи. Например, блок, отвечающий за расчеты, блок ввода данных и так далее.
  2. Обеспечение достоверной и адекватной передачи параметров задачи по локальным и глобальным сетям без потери информации и при этом визуализация результатов решения задачи в понятном конечному заказчику виде.
  3. Обеспечение функционирования виртуальной лаборатории в средах с использованием различных аппаратных платформ и операционных систем.
  4. Обеспечение функционирования виртуальной лаборатории в соответствии с техническими параметрами сервера. Например, обеспечение защиты от переполнения дискового пространства.
  5. Обеспечение функционирования виртуальной лаборатории без необходимости установки специфического программного обеспечения на рабочем месте пользователя.
  6. Возможность наращивания функциональности системы.
  7. Возможность максимально простого использования в виртуальной лаборатории реализованных и функционирующих программ.
  8. Обеспечение гарантированного и устойчивого удаленного соединения клиента с программным комплексом.
  9. Обеспечение оперативной обработки запроса одного или одновременно нескольких пользователей.
  10. Обеспечение управления правами доступа клиентов к тем или иным ресурсам.
  11. Защищенность передаваемой информации от искажений, несанкционированного доступа и подмены.
  12. Обеспечение динамичности виртуальной лаборатории, что позволяет наблюдать изменение исследуемого объекта.
  13. Управление исследуемым объектом.
  14. Возможность сопоставления свойств изучаемого объекта, с последующим анализом состояния системы по этим критериям.

Информация о работе Разработка виртуальной лабораторной работы по дисциплине "Языки программирования"