Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Tekhnologia_programmirovania_-_v2_1.doc
Скачиваний:
3
Добавлен:
01.04.2025
Размер:
191 Кб
Скачать
☆
  1. Алгоритм: определение, свойства, методы представления Алгоритм - это точное описание упорядоченной последовательности действий, приводящей за конечное число шагов к необходимому результату. Свойства: 1.Дискретность — алгоритм должен представлять процесс решения задачи как последовательное выполнение некоторых простых шагов. 2.Детерминированность (определённость). В каждый момент времени следующий шаг работы однозначно определяется состоянием системы. 3.Понятность — алгоритм должен включать только те команды, которые доступны исполнителю и входят в его систему команд. 4.Завершаемость (конечность) — при корректно заданных исходных данных алгоритм должен завершать работу и выдавать результат за конечное число шагов. 5.Массовость (универсальность). Алгоритм должен быть применим к разным наборам исходных данных. 6.Результативность — завершение алгоритма определёнными результатами. Способы представления алгоритма: словесный; табличный; графический; программа на алгоритмическом языке.

  2. Характеристики качества ПО. Методики повышения качества ПО. Функциональность: Набор атрибутов, характеризующий соответствие функциональных возможностей ПО набору требуемой пользователем функциональности. Субхарактеристики: пригодность для применения, корректность, способность к взаимодействию (в частности к сетевому), защищенность Надёжность: Набор атрибутов, относящихся к способности ПО сохранять свой уровень качества функционирования в установленных условиях за определенный период времени Субхарактеристики: уровень завершенности (отсутствие ошибок), устойчивость к дефектам, восстанавливаемость, доступность, готовность. Практичность (применимость): Набор атрибутов, относящихся к объему работ, требуемых для исполнения и индивидуальной оценки такого исполнения определенным или предполагаемым кругом пользователей. Субхарактеристики: понятность, простота использования, изучаемость, привлекательность Эффективность: Набор атрибутов, относящихся к соотношению между уровнем качества функционирования ПО и объемом используемых ресурсов при установленных условиях Субхарактеристики: временная эффективность, используемость ресурсов. Сопровождаемость: Набор атрибутов, относящихся к объему работ, требуемых для проведения конкретных изменений (модификаций). Субхарактеристики: удобство для анализа, изменяемость, стабильность, тестируемость. Мобильность: Набор атрибутов, относящихся к способности ПО быть перенесенным из одного окружения в другое Субхарактеристики: адаптируемость, простота установки, сосуществование, замещаемость. Методики повышения качества ПО: - Явный контроль качества; - Целевые характеристики качества ПО; - Принципы разработки ПО (процедуры контроля изменений, оценка результатов, прототипирование); - Стратегия тестирования; - Неформальные технические обзоры; - Внешний аудит.

  3. Хороший стиль программирования. Правильные имена. Форматирование кода. Комментирование кода. Общие правила разработки классов.

Имена данных должны быть мнемоническими.

Мнемоника - искусство запоминания, основанное на законах ассоциаций.

Не следует использовать слова, в которых обычно делаются орфографические ошибки; имена, различающиеся только одной буквой; слова, имеющие более одного очевидного сокращения; ключевые слова языка программирования.

Имена переменных типа i, j, k следует давать только управляющим переменным в операторах цикла. Отступы и выравнивания в тексте программы проясняют ее логику и облегчают ее чтение. Начальной позицией называется самая левая колонка, с которой может начинаться предложение. Начальная позиция может перемещаться влево и вправо, в зависимости от того, какое предложение записывается. Когда встречается условный оператор или оператор цикла, колонка, в которой он расположен становится начальной позицией. Конец условного оператора и тело цикла вызывает возврат начальной позиции в прежнее состояние или сдвиг влево на один отступ. Второй уровень располагается на один отступ правее начальной позиции. Таким образом, предложения, находящиеся внутри тела цикла располагаются на втором уровне, как и предложения, следующие за условным оператором.

Для повышения наглядности предназначены пробелы и пустые строки, которые разделяют программу на отдельные, логически-завершенные части-параграфы. Структурное программирование сокращает потребность в комментариях. Комментарии должны содержать информацию, которую нельзя подчеркнуть в самой программе. Перед сдачей программы комментарии нужно проверить на их соответствие возможно изменившейся программе.

Вводные комментарии содержат: номер и имя модуля; фамилию автора; дату, номер версии; назначение модуля; перечень основных алгоритмов со ссылками на источники; имена подпрограмм, вызывающих модуль; имена подпрограмм, вызываемых модулем; словарь данных; описание ввода/вывода; описание процесса обработки ошибок выполняемого модуля. Сопутствующие комментарии. Поясняют назначение каждого параграфа. Ставятся вначале параграфа.

  1. Тестирование. Методы структурного тестирования. Методы функционального тестирования. Тестирование – процесс выполнения программы с целью выявления ошибок. Принципы тестирования: - функциональное (тестирование «черного ящика»): тестируется спецификация программы, то есть вход-выход без учета знаний о ее структуре; известна общая схема работы программы - структурное (тестирование «белого ящика»): тестируется логика, внутренняя структура программы (блоки ветвлений, циклы). Функциональное тестирование Известны функции программы. Исследуется работа каждой функции на всей области определения. Основное место приложения тестов «черного ящика» – интерфейс ПО Функциональное тестирование позволяет продемонстрировать, как выполняются функции программ, принимаются исходные данные, вырабатываются результаты, сохраняется целостность внешней информации. При тестировании «черного ящика» рассматриваются системные характеристики программ, игнорируется их внутренняя логическая структура. Исчерпывающее тестирование, как правило, невозможно. Например, если в программе 10 входных величин и каждая принимает по 10 значений, то потребуется 1010 тестовых вариантов. Тестирование «черного ящика» не реагирует на многие особенности программных ошибок.

Структурное тестирование называют также тестированием по «маршрутам», так как в этом случае тестовые наборы формируют путем анализа маршрутов, предусмотренных алгоритмом. Под маршрутами при этом понимают последовательности операторов программы, которые выполняются при конкретном варианте исходных данных.

В основе структурного тестирования лежит концепция максимально полного тестирования всех маршрутов программы. Так, если алгоритм программы включает ветвление, то при одном наборе исходных данных может быть выполнена последовательность операторов, реализующая действия, которые предусматривает одна ветвь, а при втором - другая. Соответственно, для программы будут существовать маршруты, различающиеся выбранным при ветвлении вариантом.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]