- •Кокорева е.В.
- •Технология программирования Москва 2007
- •Содержание
- •Лабораторная работа № 1 Этапы разработки программного обеспечения при структурном подходе к программированию. Стадия «Техническое задание»
- •Разработка технического задания
- •Порядок разработки технического задания
- •Общие положения
- •Содержание разделов
- •Лабораторная работа № 2 Структурный подход к программированию. Стадия «Эскизный проект»
- •Анализ требований и определение спецификаций при структурном подходе
- •Спецификации процессов
- •Словарь терминов
- •Диаграммы переходов состояний (sdt)
- •Функциональные диаграммы
- •Диаграммы потоков данных (dfd)
- •Диаграммы сущность-связь
- •Лабораторная работа № 3 Структурный подход к программированию. Стадия «Технический проект»
- •Проектирование программного обеспечения при структурном подходе
- •Структурная схема разрабатываемого программного обеспечения.
- •Функциональная схема
- •Метод пошаговой детализации при составлении алгоритмов
- •Структурные карты Константайна
- •Структурные карты Джексона
- •Лабораторная работа № 4 Этапы разработки программного обеспечения. Стадия «Реализация»
- •Составление программной документации
- •1. Виды программных документов
- •Лабораторная работа № 5 Проектирование программной системы при объектном подходе к программированию
- •Основы uml - проектирования
- •1. Шаг первый
- •2. Шаг второй
- •3. Шаг третий
- •Шаг четвертый
- •Лабораторная работа № 6 Тестирование программ методами «белого ящика»
- •Тестирование программного обеспечения
- •1. Виды тестов
- •2. Стратегия «белого ящика»
- •Лабораторная работа № 7 Тестирование программ методами «черного ящика»
- •Тестирование по принципу «черного ящика»
- •Эквивалентное разбиение Основу метода составляют два положения:
- •1.1. Выделение классов эквивалентности
- •1.2. Построение тестов
- •Анализ граничных значений
- •Анализ причинно-следственных связей
- •Предположение об ошибке
- •Пример применения методов тестирования «черным ящиком»
- •6. Общая стратегия тестирования
- •Лабораторная работа № 8 Создание сетевых приложений на Delphi с использованием Windows Sockets api
- •Сетевые приложения
- •Лабораторная работа № 9 Использование технологий ole, com и ActiveX
- •2. Понятие сом
- •3. Как работает сом
- •4. Обзор технологий ActiveX и ole
- •5. Составные документы
- •6. Управляющие элементы ActiveX
- •7. Распределенная сом
- •Приложение 1 Варианты заданий Лабораторные работы №№ 1-4 выполняются для одного и того же варианта.
- •Приложение 2 Пример технического задания на программный продукт
- •2. Основание для разработки
- •3. Назначение разработки
- •4. Технические требования
- •Литература
6. Общая стратегия тестирования
Все методологии проектирования тестов могут быть объединены в общую стратегию. Это оправдано тем, что каждый метод обеспечивает создание определенного набора тестов, но ни один из них сам по себе не может дать полный набор тестов. Приемлемая стратегия состоит в следующем:
если спецификация состоит из комбинации входных условий, то начать рекомендуется с применения метода функциональных диаграмм;
в любом случае необходимо использовать анализ граничных значений;
определить правильные и неправильные классы эквивалентности для входных и выходных данных и дополнить, если это необходимо, тесты, построенные на предыдущих шагах;
для получения дополнительных тестов рекомендуется использовать метод предположения об ошибке.
Порядок выполнения работы:
Ознакомиться с теоретическими сведениями по стратегиям тестирования.
В соответствии с вариантом задачи, подготовить тесты по методикам стратегии "черного ящика".
Предлагаемые тесты свести в таблицу.
Номер теста
Назначение теста
Значения исходных данных
Ожидаемый результат
Реакция программы
Вывод
Разработать программу.
Внести в программу несколько ошибок.
Выполнить тестирование. Занести в таблицу результаты.
Сделать вывод о роли тестирования с использованием стратегии "черного ящика" и возможностях его применения. Сформулировать его достоинства и недостатки.
Варианты заданий:
Задача 1.
Разработать программу решения уравнения , где a, b, c - любые вещественные числа.
Задача 2.
Разработать программу определения суммарной длины тени, которую отбрасывают на ось ОХ отрезки, параллельные этой оси и заданные координатами x начала и конца отрезка:
Задача 3.
Разработать программу исследования уравнений второго порядка с двумя неизвестными Ax2+2Bxy+Cy2+2Dx+2Ey+F=0. Программа должна определять вид графика: эллипс, парабола, гипербола, две пересекающиеся прямые, две параллельные прямые, две мнимые прямые.
Примечание. Вид прямой втрого порядка определяется по двум дискриминантам
большому: и малому .
Малый дискиминант для эллипса положителен, для гиперболы отрицателен, для параболы равен нулю. Если большой дискриминант равен нулю, то линия второго порядка распадается на две прямых:
для эллиптического вида - пересекающиеся мнимые прямые (точка), для гиперболического вида - пара пересекающихся действительных прямых, для параболического вида - две параллельные прямые.
Задача 4.
Разработать программу определения вида треугольника, заданного длинами его сторон: равносторонний, равнобедренный, прямоугольный, разносторонний.
Задача 5.
Разработать программу определения вида четырехугольника, заданного координатами вершин на плоскости: квадрат, прямоугольник, параллелограмм, ромб, равнобедренная трапеция, прямоугольная трапеция, трапеция общего вида, четырехугольник общего вида.
Задача 6.
Разработать программу, определяющую взаимное расположение прямых в пространстве: параллельны, пересекаются, скрещиваются и отдельно, расположение каждой прямой (параллельна оси, перпендикулярна плоскости или общего расположения). Прямые задаются координатами двух точек.
Примечание. Две прямые лежат в одной плоскости, если
, прямые параллельны если ,
где l=x2-x1, m=y2-y1, n=z2-z1 (верхний индекс соответствует номеру прямой).
Защита отчета по лабораторной работе
Отчет по лабораторной работе должен включать в себя:
Задание.
Алгоритм программы.
Таблицу с результатами тестирования.
Вывод.
Защита отчета по лабораторной работе заключается в предъявлении преподавателю полученных результатов (на экране монитора), демонстрации полученных навыков и ответах на вопросы преподавателя.