В зависимости от предметной области и задач, поставленных перед разработчиками, разработка программ может представлять собой достаточно сложный, поэтапный процесс, в котором задействовано большое количество участников и разнообразных средств. Для того, чтобы определить, когда и в каких случаях какие средства применяются, выделим основные этапы разработки программного обеспечения. Наибольший интерес для проблематики рассматриваемого вопроса представляют следующие этапы разработки:
1. Проектирование приложения.
2. Реализация программного кода приложения.
3. Тестирование приложения.
Здесь сознательно опущены этапы, связанные с написанием технического задания, планирования сроков, бюджета и т.д. Причина этого заключается в том, что на данных этапах, за редким исключением, практически не используются специфические средства разработки.
Средства проектирования приложений
На этапе проектирования приложения в зависимости от сложности разрабатываемого программного продукта, напрямую зависящего от предъявляемых требований, выполняются следующие задачи проектирования:
GEOVIA | Настройка модуля автотранспортировки
1. Анализ требований.
2. Разработка архитектуры будущего программного обеспечения.
3. Разработка устройств основных компонент программного обеспечения.
4. Разработка макетов Пользовательских интерфейсов.
Результатом проектирования обычно является «Эскизный проект» (Software Design Document) или «Технический проект» (Software Architecture Document). Задача «Анализ требований» обычно выполняется с использованием методов системологии (анализа и синтеза) с учетом экспертного опыта проектировщика. Результатом анализа обычно является содержательная или формализованная модель процесса функционирования программы. В зависимости от сложности процесса для построения данных моделей могут быть применены различные методы и вспомогательные средства. В общем случае для описания моделей обычно применяются следующие нотации (в скобках приведены программные средства, которые могут быть использованы для получения моделей):
· BPMN (Vision 2003 + BPMN, AcuaLogic BPMN, Eclipse, Sybase Power Designer).
· Блок-схемы (Vision 2003 и многие другие).
· ER-диаграмы (Visio 2003, ERWin, Sybase Power Designer и многие другие).
· UML-диаграмы (Sybase Power Designer, Rational Rose и многие другие).
· макеты, мат-модели и т.д.
Иногда, когда разрабатываемый программный продукт предназначен для автоматизации какой-либо сложной деятельности задача Анализа (Моделирования) выполняется до составления технических требований к будущему продукту. Результаты анализа позволяют сформировать обоснованные требования к той или иной функциональности разрабатываемой программы и просчитать реальную выгоду от внедрения разрабатываемого продукта. Более того, иного получается так, что по результатам анализа первоначальные цели и задачи автоматизации кардинально меняются или по результатам оценки эффективности разработки и внедрения принимается решение продукт не разрабатывать.
Писать Тесты в Python – проще чем Ты думаешь!
Целью второй и третьей задачи из приведенного списка задач является разработка модели (описания) будущей системы, понятной для кодировщика – человека, который пишет код программы. Здесь огромное значение имеет то, какую парадигму программирования (парадигму программирования также необходимо рассматривать как средство разработки) необходимо использовать при написании программы. В качестве примера основных парадигм необходимо привести следующее:
· Объектно-ориентированное программирование (прототипирование; использование классов; субъективно-ориентированное программирование).
Выбор её во многом зависит от сложившихся привычек, опыта, традиций, инструментальных средств, которыми располагает коллектив разработчиков. Иногда разрабатываемый программный продукт настолько сложен, что для решения ряда задач в разных компонентах системы используются разные парадигмы. Необходимо отметить, что выбор того или иного подхода накладывает ограничения на средства, которые будут применены на этапе реализации программного кода. Результатом решения данной задачи в зависимости от подхода могут быть (в скобках приведены программные средства, которые могут быть использованы для их получения):
· диаграмма классов и т.д (Ration Rose, Sybase PowerDisigner и многие другие).
· описание модулей структур и их программного интерфейса (например, Sybase PowerDisigner и многие другие).
Разработка макетов пользовательских интерфейсов подразумевает создание наглядного представления того, как будут выглядеть те или иные видеоформы, окна в разрабатываемом приложении. Решение данной задачи основывается на применение средств дизайнера, которые в данной статье рассматриваться не будут.
Средства реализации программного кода
На этапе реализации программного кода выполняется кодирование отдельных компонент программы в соответствии с разработанным техническим проектом. Средства, которые могут быть применены, в значительной степени зависит от того, какие подходы были использованы во время проектирования и, кроме этого, от степени проработанности технического проекта. Тем не менее, среди средств разработки программного кода необходимо выделить следующие основные виды средств (в скобках приведено примеры средств): • методы и методики алгоритмирования.
· языки программирования (C++,Си, Java, C#, php и многие другие);
· средства создания пользовательского интерфейса (MFC, WPF, QT, GTK+ и т.д.)
· средства управления версиями программного кода (cvs, svn, VSS).
· средства получения исполняемого кода (MS Visual Studio, gcc и многие другие).
· средства управления базами данных (Оracle, MS SQL, FireBird, MySQL и многие другие).
· отладчики (MS Visual Studio, gdb и т.д.).
Средства тестирования программ
Основными задачами тестирования является проверка соответствия функциональности разработанной программы первоначальным требованиям, а также выявление ошибок, которые в явном или неявном виде проявляются во время работы программы. Среди основных работ по тестированию можно выделить следующее:
· Тестирование на отказ и восстановление.
· Тестирование процесса установки.
· Тестирование удобства пользования.
Среди основных видов средств, которые могут быть применены для выполнения поставленных работ можно привести следующие:
· средства анализа кода, профилирования (Code Wizard – ParaSoft, Purify – Rational Softawre. Test Coverage – Semantic и т.д.);
· средства для тестирования функциональности (TEST – Parasoft, QACenter – Compuware, Borland SilkTest
· средства для тестирования производительности (QACenter Performance – Compuware и т.д).
Источник: megalektsii.ru
Использование программных средств тестирования в педагогической практике
В статье рассматриваются особенности педагогического компьютерного тестирования: недостатки и достоинства, требования к системам проектирования тестов, дидактические особенности практического применения данных форм контроля в образовательной деятельности.
Ключевые слова
ДИДАКТИКА, ТЕСТ, ТЕСТИРОВАНИЕ, ИСПЫТУЕМЫЙ, ТЕСТОЛОГИЯ, ОЦЕНКА, РЕЗУЛЬТАТ
Текст научной работы
Использование элементов автоматизации значительно упрощает проведение процессов тестирования с последующей обработкой полученных результатов: тестирование становится максимально быстрым по времени, уменьшаются накладные расходы, появляется возможность увеличения количества тестируемых за единицу времени, уменьшается время анализа результатов.
Впервые в форме компьютерных программ тесты начали использовать в рамках систем автоматизированного обучения, разрабатываемых в частности в соответствии с существующей концепцией программированного обучения.
Метод программированного обучения был выдвинут профессором Б.Ф. Скиннером в 1954 г. Цель данного метода заключается в том, что на базе кибернетического подхода можно повысить эффективность управления процессом обучения. В своей непосредственной основе, программированное обучение, стало подразумевать работу слушателя по некому алгоритму (программе), в процессе выполнения которой, он овладевает знаниями. Роль преподавателя сводится к отслеживанию и регулированию программных действий.
Отметим преимущества компьютерного тестирования:
- Обеспечение стандартизации.
- Обеспечение индивидуальности процедуры контроля. Принцип индивидуальности лежит в основе адаптивного тестирования. Адаптивное тестирование это контроль, который позволяет регулировать трудность и число предъявляемых заданий каждому обучаемому в зависимости от его ответа на предыдущее задание: в случае правильного ответа он получит более сложное задание, в случае неправильного более легкое.
- Повышение объективности контроля и исключение субъективных факторов (усталость преподавателя, его эмоциональность или плохое настроение, негативное или излишне позитивное отношение к личности испытуемого).
- Оперативность статистической обработки результатов контроля.
- Прозрачность процесса контрольного мероприятия.
- Доступ испытуемых к полной информации и результатом проведенного контрольного мероприятия.
- Освобождение преподавателя от выполнения повторяющейся трудоемкой и рутинной работы по организации контрольного мероприятия (заготовка бланков, инструктаж тестируемого, выдача заданий, ведение протокола) и проверки его результатов.
- Обеспечение всесторонней и полной проверки.
- Доступность и равноправие всех участников процедуры тестирования.
- Тестируемому, некого стесняться – компьютер не может ни оценочно, ни эмоционально реагировать на не самые удачные ответы.
Выделим недостатки компьютерного тестирования:
- Исключение из процедуры контроля речевого компонента.
- Монотонность работы.
- Отсутствие полноценной обратной связи.
- Негативные реакции обычно вызывают различные ограничения которые иногда накладываются при выполнении заданий (время, возможность возврата к заданию, возможность исправления уже пройденного задания)
- Не всегда учитывается уровень компьютерной грамотности испытуемых.
- Нет полноценной возможности контролировать выполнение творческих заданий.
- При анализе результатов компьютерного тестирования эксперты имеют дело только с полученными ответами испытуемого. Они не видели тестируемого, не общались с ним, а значит, не владеют о нем никакой дополнительной информацией, ни как не могут выяснить его действительный объем знаний.
- Возрастает вероятность ошибочных ответов (можно неверно понять инструкцию, перепутать клавиши для ответов и др.).
Программные средства для контроля и измерения уровня знаний, умений и навыков испытуемых выделены в отдельный вид образовательных электронных изданий.
Основные задачи программных средств компьютерного тестирования:
- Хранение тестовых заданий и создание на их основе тестов.
- Регистрация и инструктаж испытуемых.
- Проведение сеанса тестирования.
- Обработка ответов и подсчет итоговых баллов. При этом обработка может быть:
- Локальной, т.е. выполняемой на месте тестирования.
- Удаленной, т.е. осуществляемой за пределами места проведения сеанса тестирования.
- Формальной, если возможно простое сравнение с ключом.
- Экспертной, если для проверки требуется привлечение экспертов.
- Оперативной, т.е. позволяющей продемонстрировать результаты сразу же после тестирования.
- Отложенной, т.е. получение результата удалено по времени по причине сложного алгоритма расчета баллов или необходимости получения заключения экспертов.
При проектирование систем компьютерного тестирования придерживаются следующих правил:
- Система желательно должна обеспечивать выполнение всех этапов по разработке, коррекции, апробации и практического использования теста.
- Система должна обеспечивать одновременную работу нескольких (более 10) испытуемых.
- Система должна делать выводы, т.е.проводить анализ статистических характеристик, обобщенный анализ по группе, индивидуальный анализ по испытуемым на основе тестирования разнесенного по времени.
- Система должна позволить формировать тесты с минимальными трудозатратами со стороны педагогов.
- В системе должны быть предусмотрены средства, минимизирующие вероятность намеренного искажения результатов (списывание, подбор правильного ответа, угадывание, подмена данных).
- Желательно максимально снизить количество простых и тем более трудоемких операций по обеспечению полноценного функционирования действующей системы на рабочих местах (минимальный алгоритм действий для испытуемого).
- Целесообразно создать систему разработки и проведения тестирования как вариант веб-приложения на основе существующих серверных языков сценариев и базы данных. В этом случае клиентской программой для работы с оболочкой может служить стандартный браузер (отпадает необходимость установки дополнительных клиентских приложений).
- Для обеспечения работы целесообразно включить в систему следующие функциональные модули:
- Модуль тестолога (преподавателя): ввод и коррекция вопросов, создание и коррекция тестов, анализ результатов прохождения тестов, средства интерактивного взаимодействия с испытуемым (пересылка сообщений во время работы испытуемого с клиентской частью: предупреждения, комментарии, инструкции, объявление результатов).
- Модуль испытуемого (тестируемого): выбор и прохождение тестов, просмотр результатов, средства интерактивного общения с преподавателем: вопросы о содержании и полученном результате.
- Модуль административных операций (управление регистрационными данными тестологов и тестируемых, выполнение служебных и технических операций, контроль корректности использования системы).
- В системе должны различаться вопросы (задания), тесты (сформированные комплекты), результаты и служебные данные.
Готовность обучающихся пройти автоматизированное компьютерное тестирование можно представить как совокупность трех связанных друг с другом компонент: побуждающего, когнитивного и функционального.
Побуждающий компонент говорит о готовности пройти компьютерное тестирование, через: призму отношения к процессу; четкое и полное понимания смысла компьютерного тестирования для себя; осознание инновационной роли компьютерного тестирования; познавательный интерес к особенностям компьютерного тестирования.
Когнитивный компонент представляет собой понимание: смысла терминов: «тест», «автоматизированный тест», «компьютерное тестирование»; рамок проведения компьютерного тестирования; многообразие вариантов и форм тестовых заданий.
Функциональный компонент требует: адекватно воспринимать интерфейс компьютерного теста; адекватно относиться к ситуации компьютерного тестирования; отвечать на тестовые задания различных форм, понимая их смысловую нагрузку; адекватно принимать ограничения при проведении компьютерного тестирования таких как время на ответ, невозможность возврата к ранее отображенным вопросам, невозможность исправления ответа и т.п.; адекватно принимать результаты проведенного тестирования.
Для педагогов, можно порекомендовать следующие бесплатные интернет-сервисы которые помогут создать разнообразные по содержанию тесты и провести тестирование: Мастер-Тест (http://master-test.net), LetsTest (https://letstest.ru/), Online Test Pad (http://www.onlinetestpad.com/ru-ru/Default.aspx), Банк Тестов (http://www.banktestov.ru/). Особо выделю сайт шаблонов дидактических игр «Umaigra» (http://www.umapalata.com/ui_ru/home.asp), где каждая игра, по сути, представляет собой особый вариант анимированного теста, что повышает и интерес тестируемого к его прохождению, и мотивацию к достижению результатов.
Таким образом, программные средства педагогического тестирования являются инновационным методом контроля знаний и могут быть реализованы в образовательной практике в соответствии с концепцией программированного обучения.
Матрица результатов тестирования
- Векслер В.А.
Особенности определения валидности педагогического теста
- Векслер В.А.
- Рейдель Л.Б.
Источник: novainfo.ru
§ 11. КОМПЬЮТЕРНОЕ ТЕСТИРОВАНИЕ
11.1. ТЕХНОЛОГИЯ ПРОЕКТИРОВАНИЯ КОМПЬЮТЕРНЫХ ТЕСТОВ ПРЕДМЕТНОЙ ОБЛАСТИ
Компьютеры в обучении — вопрос, требующий отдельного рассмотрения. Отметим лишь, что различные варианты АОС (автоматизированных обучающих систем) вобрали в себя лучшие достижения компьютерных технологий и стали широко популярными не только в учебных
• выявить и учитывать семантические связи модулей и их отношения с другими предметными областями . Этапы разработки компьютерных тестов. Можно выделить два принципиальных способа контроля (тестирования) некоторой системы: 1) метод «белого ящика» — принцип тестирования экспертной модели знаний; 2) метод «черного ящика» — тестирование некоторой сложной системы по принципу контроля входных и выходных данных (наиболее подходит для компьютерного тестирования).
Введем ряд определений и понятий. Тестирование — процесс оценки соответствия личностной модели знаний ученика экспертной модели знаний. Главная цель тестирования — обнаружение несоответствия этих моделей (а не измерение уровня знаний), оценка уровня их несоответствия. Тестирование проводится с помощью специальных тестов, состоящих из заданного набора тестовых заданий.
Тестовое задание — четкое и ясное задание по предметной области, требующее однозначного ответа или выполнения определенного алгоритма действий. Тест — набор взаимосвязанных тестовых заданий, позволяющих оценить соответствие знании ученика экспертной модели знаний предметной области. Тестовое пространство — множество тестовых заданий по всем модулям экспертной модели знании.
Класс эквивалентности — множество тестовых заданий, таких, что выполнение одного из них учеником гарантирует выполнение других. Полный тест — подмножество тестового пространства, обеспечивающего объективную оценку соответствия между личностной моделью и экспертной моделью знаний. Эффективный тест — оптимальный по объему полный тест.
Самой сложной задачей эксперта по контролю является задача разработки тестов, которые позволяют максимально объективно оценить уровень соответствия или несоответствия личностной модели знании ученика и экспертной модели. Подбор тестовых заданий осуществляется экспертами-педагогами методологией «белого ящика», а их пригодность оценивают с помощью «черного ящика», рис. 2.30.
Оценка соответствия Рис. 2.30. Схема создания тестовых заданий Самый простой способ составления тестовых заданий — формирование вопросов к понятиям, составляющим узлы семантического графа, разработка упражнений, требующих для выполнения знания свойств выбранного понятия. Более сложным этапом является разработка тестовых заданий, определяющих отношения между понятиями.
Еще более глубокий уровень заданий связан с подбором тестов, выявляющих связь понятий между отдельными модулями. Множество тестовых заданий (тестовое пространство), вообще говоря, согласно принципу исчерпывающего тестирования, может быть бесконечным. Однако в каждом реальном случае существует конечное подмножество тестовых заданий, использование которых позволяет с большой вероятностной точностью оценить соответствие знаний ученика заданным критериям по экспертной модели знаний (полный тест). Из полного теста можно выделить эффективный тест (оптимальный по объему набор тестовых заданий, гарантирующий оценку личностной модели ученика заданным критериям).
Выбор эффективного теста зависит от удачного разбиения тестового пространства на классы эквивалентности, пограничные условия, создания тестов на покрытие путей и логических связей между понятиями и модулями. В дальнейшем необходим тестовый эксперимент на группе учащихся, который позволит провести корректировку и доводку теста до вида эксплуатации (методика черного ящика). Таким образом, построение компьютерных тестов можно осуществлять в следующей последовательности: • формализация экспертной целевой модели знаний; • нисходящее (или снизу — вверх) проектирование тестового пространства ; • формирование и наполнение тестовых заданий; • формирование полного компьютерного теста; • тестовый эксперимент; • выбор эффективного теста; • анализ, корректировка и доводка теста до вида эксплуатации.
11.2. ТИПЫ КОМПЬЮТЕРНЫХ ТЕСТОВ
В соответствии с моделью знаний, выделим три класса компьютерных тестов на знания, умения и навыки. Отметим, что типы компьютерных тестовых заданий определяются способами однозначного распознавания ответных действий тестируемого.
1.Типы тестовых заданий по блоку «знания» — вопросы альтернативные (требуют ответа да — нет); • вопросы с выбором (ответ из набора вариантов); • вопросы информативные на знание фактов (где, когда, сколько); • вопросы на знание фактов, имеющих формализованную структуру (в виде информационной модели или схемы знаний); • вопросы по темам, где имеются однозначные общепринятые знаковые модели: математические формулы, законы, предикатные представления, таблицы; • вопросы, ответы на которые можно контролировать по набору ключевых слов; • вопросы, ответы на которые можно распознавать каким-либо методом однозначно. 2. Типы тестовых заданий по блоку «навыки» (распознание деятельности: манипуляции с клавиатурой; по конечному результату): • задания на стандартные алгоритмы (альтернативные да — нет, выбор из набора вариантов); • выполнение действия. 3. Типы тестовых заданий по блоку «умения». Те же самые, что для навыков, но используют нестандартные алгоритмы и задачи предметной области при контроле времени их решения: • задания на нестандартные алгоритмы (альтернативные да — нет, выбор из набора вариантов); • выполнение действия. Выбор типов тестов определяется: • особенностями инструментальных тестовых программ (тестовыми оболочками); . • особенностями предметной области; • опытом и мастерством экспертов.
11.3. ИНСТРУМЕНТАЛЬНЫЕ ТЕСТОВЫЕ ОБОЛОЧКИ
Для создания тестов по предметной области разрабатываются специальные инструментальные программы-оболочки, позволяющие создавать компьютерные тесты путем формирования базы данных из набора тестовых заданий. Инструментальные программы, позволяющие разрабатывать компьютерные тесты, можно разделить на два класса: универсальные и специализированные.
Универсальные программы содержат тестовую оболочку как составную часть. Среди них Адонис (Москва), Linkway (Microsoft), Фея (Томск), Радуга (Москва) и т.п. Специализированные тестовые оболочки предназначены лишь для формирования тестов. Это — Аист (Москва), I_now (Иркутск), Тест (Красноярск) и др.
Источник: studfile.net