- •ОСНОВЫ ТЕХНОЛОГИИ РАЗРАБОТКИ ПРОГРАММ
- •ОСНОВЫ ТЕХНОЛОГИИ РАЗРАБОТКИ ПРОГРАММ
- •Требования к программам как к промышленному изделию - критерии качества программ
- •КРИТЕРИИ КАЧЕСТВА ПРОГРАММ
- •КРИТЕРИИ КАЧЕСТВА ПРОГРАММ
- •КРИТЕРИИ КАЧЕСТВА ПРОГРАММ
- •Технологические принципы разработки программ
- •Этапы разработки программы
- •Этапы разработки программы
- •Внешняя спецификация задачи
- •Правила записи спецификаций
- •Правила записи спецификаций - правила структурирования текстов
- •Правила записи спецификаций - правила структурирования текстов
- •Правила записи спецификаций
- •Правила записи спецификаций
- •Аномалии
- •Обработка аномалий
- •Тестирование - первые сведения
- •ТЕСТЫ
- •Функциональные тесты
- •Функциональное
- •Структурное тестирование
- •Способы тестирования
- •ОТЛАДКА ПРОГРАММ
- •Документация на разработанную программу
Правила записи спецификаций
Текст выходной формы
заключается в фигуру (образ экрана, листа бумаги принтера и др.)
Текст входной формы и
реакции на аномалию
заключается в фигуру
Правила записи спецификаций - правила структурирования текстов
Последовательные
составляющие
Альтернативные
составляющие
Повторяемые
составляющие
<текст1> <текст2> или <текст1> <текст2>
<текст1> |
или <текст1> <текст2> |
|
<текст2> |
||
|
<текст>
. . . или <текст> . . .
возможно любое количество составляющих данного вида
Правила записи спецификаций - правила структурирования текстов
Возможная (необязательная) составляющая
Ограниченное повторение
Возможное повторение
[текст]
текст |
c |
|
. . . |
b |
|
|
|
|
текст |
a |
|
. . . |
||
|
[текст. . .]
не менее b раз и не более с раз
ровно a раз
возможно включение или отсутствие любого количества составляющих данного типа
Правила записи спецификаций
С |
<C> |
значения |
|
переменной С |
|||
|
|
< > используются также для обозначения раскрываемой далее абстракции
С |
символ С |
При составлении текстов входной и выходной форм следует учитывать размеры носителя информации (экрана, листа бумаги принтера и т. д.) и набор допустимых символов
Правила записи спецификаций
Пример. Задача вычисления суммы на счете клиента в банке на конец каждого месяца.
Форма вывода |
|
|
|
образец1 |
|
n<=0 |
i |
v |
<образец1> |
<i> |
<v>} n раз |
|
Sredn=<Sredn> |
[Внимание: среднее больше 2000]
Аномалии
недопустимые |
|
выявляемые при |
||||
значения исходных |
|
вычислениях |
||||
|
данных |
|
|
деление на ноль |
||
|
||||||
|
|
|||||
|
|
не соответствующие |
|
|
|
переполнение |
|
|
|
|
|
||
|
|
|
|
исчезновение порядка |
||
|
|
|
|
|||
|
|
содержанию задачи |
|
|
||
|
|
|
|
|
|
|
|
|
недопустимые значения параметров |
||||
|
|
не удовлетворяющие |
|
|
||
|
|
|
|
подпрограмм |
||
|
|
формальным |
|
|
||
|
|
|
|
|
|
правилам ввода Аномалии
выявляемые |
Обнаруживаемые |
проектируемой |
операционной |
программой |
системой или средой |
|
программирования |
Обработка аномалий
+
Есть аномалия?
реакция на аномалию
Тестирование - первые сведения
Тест - совокупность специально подобранных исходных данных и соответствующих выходных данных, используемых для проверки правильности работы программы.
Тестирование - испытание программы на множестве тестов.
Подготовка тестирования: подготовка тестов;
подготовка программы к тестированию (вставка дополнительных операторов вывода, …)
ТЕСТЫ
Функциональные |
Структурные |
(создаются на этапе |
(создаются на этапе |
анализа задачи) |
разработки алгоритма) |
Функциональные тесты
входные |
|
выходные |
|
данные |
|
данные |
|
программа |
|||
|
|
||
|
|
|
При построении функциональных тестов:
Программа рассматривается как «черный ящик», ее
внутренняя структура не учитываются.
Используются методы решения задачи, отличные от
положенных в основу алгоритма.
Цель функционального тестирования - найти расхождение между программой и ее внешней спецификацией.