Статья опубликована в рамках: XVIII Международной научно-практической конференции «Инновации в науке» (Россия, г. Новосибирск, 25 марта 2013 г.)
Наука: Технические науки
Скачать книгу(-и): Сборник статей конференции, Сборник статей конференции часть II
- Условия публикаций
- Все статьи конференции
дипломов
ОСОБЕННОСТИ РАЗРАБОТКИ МЕТОДИЧЕСКОГО ПОСОБИЯ НА ТЕМУ «РАЗБИЕНИЕ ПО ЭКВИВАЛЕНТНОСТИ И АНАЛИЗ ГРАНИЧНЫХ ЗНАЧЕНИЙ» » (ДЛЯ СТУДЕНТОВ НАПРАВЛЕНИЙ «ИНФОРМАТИКА И ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА» И «ПРОГРАММНАЯ ИНЖЕНЕРИЯ»)
Полевщиков Иван Сергеевич
аспирант кафедры ИТАС ПНИПУ, г. Пермь
PECULARITIES OF DEVELOPING OF A STUDY GUIDE EQUIVALENCE PARTITIONING ANDBOUNDARY VALUE ANALYSIS (FOR STUDENTS OF INFORMATION AND COMPUTER SCIENCE AND SOFTWARE ENGINEERING SPECIALITIES)
Ivan Polevshchikov
Postgraduate student of the department of Information Technologies andComputer-based Systems, Perm National Research Polytechnic University, Perm
АННОТАЦИЯ
В статье рассмотрены особенности разработки методического пособия, посвященного тестированию программного обеспечения с использованием разбиения по эквивалентности и анализа граничных значений. Приведены некоторые теоретические сведения по данным способам тестирования. Показан пример варианта задания. Приведен пример решения подобных задач. Также представлены примеры контрольных вопросов для подготовки к защите отчета. Таким образом, целью создания методического пособия является получение студентами умений производить тестирование программного обеспечения, используя разбиение по эквивалентности и анализ граничных значений.
ABSTRACT
In the paper there are considered peculiarities of developing of a study guide devoted to software testing using equivalence partitioning and boundary value analysis. There is given some theoretical data on these testing types. Also there is proposed an example of possible task with its solution as well as examples of test questions for preparation to report presentation. Therefore, the aim of development of a study guide is a students’ acquisition of knowledge of how to deal with software testing usingequivalence partitioning and boundary value analysis.
Ключевые слова: программная инженерия, тестирование программного обеспечения, разбиение по эквивалентности, анализ граничных значений.
Keywords: softwareengineering, softwaretesting, equivalence partitioning, boundary value analysis.
Тестирование — это процесс выполнения программы с целью обнаружения ошибок [1]. Данный процесс изучается студентами направлений «Информатика и вычислительная техника» и «Программная инженерия» в ряде дисциплин, например «Стандартизация разработки программного обеспечения», «Технологии разработки программного обеспечения», «Математические основы верификации ПО» и т. п.
В области программной инженерии сотрудниками кафедры ИТАС ПНИПУ был опубликован ряд работ [2—4]. Однако актуальной остается задача разработать цикл методических пособий, посвященных тестированию программного обеспечения. Рассмотрим особенности разработки методического пособия по теме «Разбиение по эквивалентности и анализ граничных значений».
Данное методическое пособие содержит:
1. краткие теоретические сведения;
2. задачи, разбитые на 10 вариантов (в каждом варианте по 2 задачи);
3. примеры решения задач;
4. контрольные вопросы.
Данные способы тестирования относятся к способам тестирования «черного ящика», при использовании которых известны функции программы, а исследуется работа каждой функции на всей области определения [1].
Разбиение по эквивалентности — это способ тестирования, при использовании которого входная область данных программы разделяется на классы эквивалентности [1]. При этом для каждого класса эквивалентности должен быть разработан 1 тестовый вариант. Класс эквивалентности представляет собой некоторую совокупность данных, обладающую общими свойствами. Для дополнения способа разбиения по эквивалентности используется способ анализа граничных значений. Главные отличия анализа граничных значений от разбиения по эквивалентности заключаются в том, что тестовые варианты создаются для проверки только ребер классов эквивалентности, а также при создании тестовых вариантов принимаются во внимание как условия ввода, так и область вывода [1].
В методическом пособии приведен ряд задач, разбитых по вариантам. Все варианты в пределах методического пособия содержат по две задачи. Для всех вариантов характерен одинаковый уровень сложности. Каждый из студентов выполняет свой вариант. Рассмотрим в качестве примера один из вариантов. Студенту предлагается решить две задачи:
Задача № 1.
Сформировать классы эквивалентности для следующих случаев:
· Условие ввода задает диапазон 10...170.
· Условие ввода задает значение 59.
· Условие ввода задает множество значений {12, 38, 7, 400}.
· Условие ввода задает булево значение, равное true.
Задача № 2.
Предположим, что необходимо протестировать программу сортировки массива по возрастанию методом прямого обмена. Построить дерево разбиений и разработать тестовые варианты. Написать соответствующую программу на любом из языков программирования (Pascal, Delphi, C++, C#, Java и т. п.) и протестировать, используя разработанные тестовые варианты.
Первая задача, более простая, развивает умение обучаемого формировать классы эквивалентности для каждого из четырех изученных случаев [1]. Вторая задача, более сложная, развивает умение обучаемого самостоятельно выполнить все шаги тестирования программы с использованием анализа граничных значений. Также следует отметить, что при решении данных задач необходимо использовать знания, умения и навыки, полученные в ходе изучения дисциплин «Информатика», «Программирование на языках высокого уровня» (умения и навыки написания программ на одном из языков высокого уровня) и «Дискретная математика» (знание теории множеств).
Рассмотрим пример решения задачи № 1, приведенный в методическом пособии:
Постановка задачи.
Сформировать классы эквивалентности для следующих случаев:
1. Условие ввода задает диапазон 5...15.
2. Условие ввода задает значение 67.
3. Условие ввода задает множество значений {2, 3, 6, 10}.
4. Условие ввода задает булево значение, равное false.
Решение задачи.
1. Условие ввода задает диапазон 5...15, поэтому определяются один допустимый и два недопустимых класса эквивалентности:
1) V_Class={5.. .15} — допустимый класс эквивалентности;
2) Inv_С1аss1={x|для любого х: х < 5} — первый недопустимый класс эквивалентности;
3) Inv_С1аss2={y|для любого у: у > 15} — второй недопустимый класс эквивалентности.
2. Условие ввода задает конкретное значение 67, поэтому определяется один допустимый и два недопустимых класса эквивалентности:
1) V_Class={67};
2) Inv_Class1 ={х|для любого х: х < 67};
3) Inv_С1аss2 = {y|для любого у: у > 67}.
3. Условие ввода задает множество значений {2, 3, 6, 10}, поэтому определяются один допустимый и один недопустимый класс эквивалентности:
1) V_Class={2, 3, 6, 10};
2) Inv_С1аss={x|для любого х: (х 2)&(х 3)&(х 6)&(х 10)}.
4. Условие ввода задает булево значение false, поэтому определяются один допустимый и один недопустимый класс эквивалентности:
1) V_Class={false};
2) Inv_Class={true}.
В конце методического пособия приведен список контрольных вопросов. Примеры вопросов:
1. Что называется классом эквивалентности?
2. Сформулируйте правило формирования классов эквивалентности для случая, когда условие ввода задает диапазон значений.
3. В чем заключаются основные отличия анализа граничных значений от разбиения по эквивалентности?
4. Сформулируйте правило анализа граничных значений для случая, когда условие ввода задает дискретное множество значений.
На данные контрольные вопросы студент должен ответить самостоятельно при подготовке к защите отчета. Аналогичные вопросы преподаватель будет задавать при защите отчета.
Подводя итог описанному выше, можно сказать, что целью создания этого методического пособия является получение студентами умений производить тестирование программного обеспечения, применяя разбиение по эквивалентности и анализ граничных значений. По мере накопления опыта обучения студентов по этому методическому пособию, последнее будет совершенствоваться.
Список литературы:
1.Орлов С.А., Цилькер Б.Я. Технологии разработки программного обеспечения: Учебник для вузов. 4-е изд. Стандарт третьего поколения. — СПб.: Питер, 2012. — 608 с.: ил.
2.Файзрахманов Р.А., Братчиков И.А. Оптимизация процесса производства программного обеспечения на основе построения плана обучения исполнителей. Вестник Пермского национального исследовательского политехнического университета (ПГТУ). Электротехника, информационные технологии, системы управления. 2009. № 3. С. 74—80.
3.Файзрахманов Р.А. Проектирование автоматизированных информационных систем на основе объектно-ориентированного подхода: учебное пособие / Р.А. Файзрахманов, А.В. Архипов; Пермский государственный технический университет — Пермь: Изд-во ПГТУ, 2011 — 222 с.: ил.
4.Файзрахманов Р.А.. Структурно-функциональный подход к проектированию информационных технологий и автоматизированных систем с использованием CASE-средств: учебное пособие / Р.А. Файзрахманов, К.А. Селезнев; Пермский государственный технический университет — Пермь: Изд-во ПГТУ, 2007 — 266 с.: ил. — Библиогр.: с. 266 .— Прил.: с. 245—265.
дипломов
Оставить комментарий