Похожие презентации:
Поддержка и тестирование программных модулей
1.
МДК 01.02 ПОДДЕРЖКА И ТЕСТИРОВАНИЕПРОГРАММНЫХ МОДУЛЕЙ
2.
Программная ошибка (иногда называемая багом или дефектом) — это непредвиденное илинежелательное поведение программы, которое приводит к некорректной работе приложения
или отклонению от ожидаемого поведения.
Термин “Программная ошибка” разделить на два технологических элемента:
1. Причина ошибки – дефект, фрагмент кода, по вине которого возникает ошибка;
2. Следствие – сбой, некорректное поведение программы, выражающееся в фатальной
ошибке, зацикливании, нарушении целостности данных, дефектах структур данных, ошибках
в выходных данных и т.п.
02
3.
024.
Требование (requirement) — описание того, какие функции и с соблюдением каких условийдолжно выполнять приложение в процессе решения полезной для пользователя задачи.
Одним из аргументом в пользу тестирования требований является то, что, по разным
оценкам, в них зарождается от ½ до ¾ всех проблем с программным обеспечением.
Программа должна обеспечивать не только достоверный результат, но и получать его за
приемлемое время, что соответствует требованиям производительности.
02
5.
При формулировании требований производительности нужно учитывать следующее:1. Производительность зависит от архитектуры аппаратных средств и системного
программного обеспечения;
2. Производительность программ является производной от трудоемкости
используемых алгоритмов.
3. Может иметь место чувствительность алгоритмов, реализуемых в программе –
различная трудоемкость (и производительность) на разных наборах входных
данных.
02
6.
Некоторые компоненты программы должны реагировать на заданные внешние воздействияв течение ограниченного интервала времени.
К
требованиям
реального
времени
также
относится
реактивность
программы,
т.е.
способность давать отклик на действия пользователя в ограниченное время.
02
7.
Большинство общих требований графического интерфейса, а также часть требованийпроизводительности и реактивности базируется на субъективных (в лучшем случае,
экспертных) оценках в категориях «удобный», «дружественный», объединяемых общим
термином Useability.
В данный ряд требований можно отнести:
• Случайный вред последовательностью команд;
• Снижение производительности из-за неудобного интерфейса;
02
8.
Этот тезис является следствием невозможности полного тестирования программы путемпростого перебора всех возможных вариантов ее исполнения в различных условиях, в число
которых входят:
1. возможные сочетания входных данных;
2. возможные последовательности входных данных и команд;
3. возможные архитектурные комбинации аппаратно-программного окружения;
4. возможные временные сочетания событий, влияющих на поведение программы.
02
9.
Виды ошибок, от которых следует защищаться программе:1. «Защита от дурака» - проверка действий пользователя, возможно приводящих к
некорректным результатам или деградации производительности (копирование больших
массивов, недопустимые форматы ввода, перезапись файлов и т.п.);
2. Ошибки форматов – недопустимые форматы файлов или сообщений программ вследствие
ошибок открытия/соединения или намеренного искажения;
02
10.
Виды ошибок, от которых следует защищаться программе:3. Ошибки предоставления ресурсов – отсутствие ресурса или его ограниченность;
4. Сбои и аварийные завершения – закрытие сетевого потока до окончания передачи
файла и т.п..).
Кроме
средств
максимально
самой
защиты
возможной
необходимы
информации
об
средства
ошибке
фиксации
(дата,
время,
ошибок:
сохранение
версия
программы,
окружение, стек вызова, текущие данные).
02
11.
1. Ошибка при определенном значении или наборе значений.Ошибка проявляется при некотором значении или наборе значений, имеющих отношение к
данным одного вида.
2. Ошибка при определенной последовательности значений.
Ошибка проявляется при определенном сочетании значений, имеющих отношение к данным
различных видов, либо вводимых в разное время в определенной последовательности.
02
12.
3. Ошибка при определенных временных сочетаниях (гонки).Ошибка проявляется при некотором значении или наборе значений, имеющих отношение к
данным одного вида.
2. Ошибки со случайным временем появления.
Некоторые
ошибки появляются в программе внезапно и без видимых причин или
закономерностей.
02
13.
Случайным временем появления могут характеризоваться многие другие ошибки:• код, содержащий дефекты, может вызываться внешними событиями,
происходящими в случайные моменты времени;
• для выполнения некоторых операций может не оказаться необходимых ресурсов;
• дефект вызывается при накоплении определенного количества данных;
• дефект вызывается при определенной последовательности команд пользователя
или последовательности вызова методов, сама последовательность возникает
случайным образом.
02
14.
Ошибкиоказывают
влияние
как
на
результат
работы
программы,
так
и
на
ее
работоспособность:
1. Наблюдаемый или тестируемый ошибочный результат – несоответствие результата
программы ожидаемому.
2. Нарушение целостности внутренних данных (дефект структуры данных) - Программные
ошибки
могут
соответствовать
приводить
тем
к
тому,
соглашениям,
что
конфигурация
которые
приняты
внутренних
при
данных
не
будет
проектировании
для
этой
структуры данных.
02
15.
3. Зацикливание, внешне проявляющееся как зависание программы - Зацикливаниерекурсивного алгоритма приводит к фатальной ошибке, связанной с переполнением стека.
4. Фатальная ошибка - перехваченное исключение, приводящее к аварийному завершению
отдельного
этапа
исполнения
программы
с
последующим
восстановлением,
либо
завершению программы с сообщением об ошибке, либо к ее перезагрузке.
5. Деградация по производительности или ресурсам. Программа снижает свою
производительность, либо использует значительно большее, чем обычно, количество
ресурсов (например, памяти).
02
к
16.
1. Опечатка - Ошибка, внесенная бессознательно или автоматически в одно выражение илиоператор. Исправляется редактированием.
2. Крайняя ситуация (граничное условие) - Ошибка, связанная с пропуском одного из
граничных условий – сочетании данных, с которыми работает программа (например, пустая
строка, строка, состоящая из одних пробелов и не содержащая слов). Либо ошибка,
связанная с пропуском одного шага алгоритма (цикла, рекурсии).
02
17.
3. Методологическая ошибка алгоритма - Алгоритм, положенный в основу программы, не вовсех случаях дает решение, либо в определенных случаях дает неверное решение. Но в
отличие от ошибок граничных условий, эта частичная неработоспособность не может быть
локализована и устранена.
4. Методологическая ошибка архитектуры - Выбранное архитектурное решение не
обеспечивает выполнение требований, предъявляемых к системе, т.е. является ошибкой
проектирования.
02
18.
МДК 01.02 ПОДДЕРЖКА И ТЕСТИРОВАНИЕПРОГРАММНЫХ МОДУЛЕЙ