Главная страница Случайная лекция Мы поможем в написании ваших работ! Порталы: БиологияВойнаГеографияИнформатикаИскусствоИсторияКультураЛингвистикаМатематикаМедицинаОхрана трудаПолитикаПравоПсихологияРелигияТехникаФизикаФилософияЭкономика Мы поможем в написании ваших работ! |
Метод функциональных диаграммМетод функциональных диаграмм или диаграмм причинно-следственных связей помогаетсистематически выбирать высокорезультативные тесты. Кроме этого, метод функциональных диаграмм дает полезный побочный эффект, так как позволяет обнаруживать неполноту и неоднозначность исходных спецификаций. Функциональная диаграмма – это формальный язык, на который транслируется спецификация, написанная на естественном языке. Методика использования функциональных диаграмм: 1. Спецификация разбивается на “рабочие” участки, так как для больших спецификаций функциональные диаграммы становятся слишком громоздкими. Например, при тестировании компилятора в качестве рабочего участка можно рассматривать каждый отдельный оператор языка программирования. 2. В спецификации определяются причины и следствия. Причина – это отдельное входное условие или класс эквивалентных входных условий. Следствие – это выходное условие (результат выполнения программы). Например, если при выполнении программы обновляется содержимое некоторого файла, то изменение в нем является результатом выполнения программы, а подтверждающее сообщение – выходным условием. Причины и следствия определяютсяпутем последовательного чтения спецификации. Каждым причине и следствию приписывается уникальный номер. 3. Анализируется семантическое содержание спецификации, которая преобразуется в булевский граф (функциональную диаграмму), связывающий причины и следствия. 4. Диаграмма дополняетсяпримечаниями, задающими ограничения и описывающими комбинации причин и (или) следствий, которые являются невозможными из-за синтаксических или внешних ограничений. 5. Путем методического прослеживания состояний условий диаграммы она преобразуется в таблицу решений с ограниченными входами. Каждый столбец таблицы решений соответствует тесту. 6. Столбцы таблицы решений преобразуются в тесты. Процедура генерации таблицы решений заключается в следующем: a) Выбрать некоторое следствие, которое должно быть в состоянии 1. b) Найти все комбинации причин (с учетом ограничени), которые установят это следствие в 1, прокладывая из этого следствия обратную трассу через диаграмму. c) Построить столбец в таблице решений для каждой комбинации причин. d) Для каждой комбинации причин определить состояния всех других следствий и поместить их в соответствующий столбец таблицы решений. При выполнении этого шага необходимо руководствоваться следующими положениями: · Если обратная трасса прокладывается через узел ИЛИ, выход которого должен принимать значение 1, то одновременно не следует устанавливать в 1 более одного входа в этот узел. Цель данного правила – избежать пропуска определенных ошибок из-за того, что одна причина маскируется другой. · Если обратная трасса прокладывается через узел ИЛИ, выход которого должен принимать значение 0, то все комбинации входов, приводящие выход в 0, должны быть в конечном счете перечислены. Однако, когда исследуется ситуация, где один вход есть 0, а один или более других входов есть 1, не обязательно перечислять все условия, при которых остальные входы могут быть 1. · Если обратная трасса прокладывается через узел И, выход которого должен принимать значение 0, то необходимо указать лишь одно условие, согласно которому все входы являются нулями. Каждый узел диаграммы может находиться в двух состояниях – 0 или 1; 0обозначает состояние “отсутствует”, а 1 – “присутствует”. Для представления функциональных диаграмм используются следующие базовые символы: Если значение aесть 1, то и значение bесть 1; в противном случае значениеbесть0. Если значение aесть 0, то значение bесть 1; в противном случае значениеbесть0. ФункцияИЛИустанавливает, что если a, или b, или сесть 1, тоdесть 1; в противном случае dесть 0.
Функция И устанавливает, что если и a, и b есть 1, то и с есть 1; в противном случае сесть 0.
Пример Рассмотрим диаграмму, отображающую спецификацию: Файл обновляется, если символ в колонке 1 является буквой “A” или “B”, а символ в колонке 2 – цифра. Если первый символ ошибочный, то выдается сообщение X1, а если второй символ не является цифрой – сообщение X2. Причины: 1 – символ “A” в колонке 1 2 – символ “B” в колонке 1 3 – цифра в колонке 2 Следствия: 7 – файл обновляется 6 – выдается сообщение X1 8 – выдается сообщение X2
Приведенная функциональная диаграмма содержит невозможную комбинацию причин: причины 1 и 2 не могут быть установлены в 1 одновременно. Для изображения невозможных комбинаций причин используются следующие логические ограничения: Ограничение Е устанавливает, что Е должно быть истинным, если хотя бы одна из причин – а или b – принимает значение 1 (a и b не могут принимать значение 1 одновременно).
Ограничение I устанавливает, что по крайней мере одна из величин a, b или c всегда должна быть равной 1 (a,b и с не могут принимать значение 0 одновременно).
Ограничение О устанавливает, что одна и только одна из величин а или bдолжна быть равна 1.
Ограничение R устанавливает, что если a принимает значение 1, то и b должна принимать значение 1, т.е. невозможно, чтобы a было равно 1, а b – 0. Ограничение М устанавливает, что если следствие aимеет значение 1, то следствие b должно принять значение 0. Для рассмотренного выше примера физически невозможно, чтобы причины 1 и 2 присутствовали одновременно, но возможно, чтобы присутствовала одна из них. Следовательно, они связаны ограничением Е. Преобразуем полученную функциональную диаграмму в таблицу решений. Выберем следствие 7 (файл обновляется). Следствие 7имеет место, еслиузлы3 и 11есть1. В свою очередь узел 11 есть 1, если одна из причин 1 или 2 имеет значений 1. Таким образом, возможны следующие состояния узлов 1 – 3: 1 0 1 и 0 1 0. Следствие 6 имеет место, если значение узла 11 есть 0 (узлы1 и 2оба равны 0). Следствие 8 имеет место, если значение узла 3 есть 0. Таблица решений будет иметь следующий вид: Столбец 1 представляет условие, где следствие 6 есть 1, столбцы 2,3 – следствие 7 есть 1, а столбец 4 соответствует условию, для которого следствие 8 есть 1. Пробелы в таблице решений представляют “безразличные” ситуации (состояние причины несущественно). Преобразуем таблицу решений в набор тестов: Кол.1 Кол.2 1. 1 1 2. A 2 3. B 2 4. A A
Дата добавления: 2014-03-13; просмотров: 1382; Нарушение авторских прав Мы поможем в написании ваших работ! |