Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ИС.doc
Скачиваний:
2
Добавлен:
01.04.2025
Размер:
374.27 Кб
Скачать
  • 2. Понятие жизненного цикла и его стадии.

Стадии разбиваются на этапы.

Краткое содержание стадий и этапов:

I. Стадия – Системный анализ.

1. Этап – сбор материалов.

Здесь происходит выработка требований к системе, изучение объекта автоматизации.

2. Анализ материалов и разработка документации.

Создание технико-экономического обоснования (ТО), планирование проекта, разработка и утверждение ТЗ (технического задания) на выполнение работ.

II. Проектирование и реализация.

1. Архитектурное проектирование.

Выполняется выбор проектных решений по всем аспектам разработки ИС, описание архитектуры системы и всех ее основных компонентов.

2. Детальное проектирование

Разработка или выбор мат. методов и алгоритмов, выбор КТС (комплекс технических средств), выбор структур БД (баз данных), создание документации на поставку и установку ТС и ПС (технических средств, программных средств).

3. Реализация.

Кодирование, тестирование и интеграция программ, установка ТС, ПС, разработка инструкций по эксплуатации этих средств, инструкций пользователя ИС.

III. Ввод в эксплуатацию.

Ввод в опытную эксплуатацию ТС и ПС, загрузка БД, обучение персонала, проведение системных испытаний, сдача в промышленную эксплуатацию и подписание актов «приемки-сдачи».

IV. Эксплуатация ИС.

Использование заказчиком, пользователем ИС по назначению.

V. Сопровождение ИС.

Поддержка ТС и ПС, администрирование БД, внесение изменений в ИС – три типа:

- коррекция;

- адаптация – приспособление к новым условиям;

- совершенствование.

На каждом этапе ИСЦ формируется определенный набор документов и технических решений, при этом для каждого этапа исходными являются документы и решения, полученные на предыдущем этапе.

Этап завершается проверкой предложенных решений и документов на их соответствие сформулированным требованиям и начальным условиям.

Необходимо отметить итеративность (повторяемость) создания ИС, т.е. возвраты к более ранним этапам. Некоторые виды работ повторяются в связи с изменениями внешних условий или корректировкой требований в ходе самой разработки.

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

Тестирование.

Существуют различные подходы к тестированию:

  1. статическое;

  2. стохастическое (символическое) – комплексное тестирование с помощью компьютера; множество случайных величин.

  3. детерминированное (детализированное и трудоемкое)

Оно требует многократного выполнения программы на ЭВМ с использованием специальным образом подобранных тестовых наборов данных (ТНД). Это наиболее эффективный метод тестирования.

Имеется два подхода (направления):

- структурное тестирование (СТ);

- функциональное тестирование (ФТ).

Первое проверяет формальную логику программы, а второе (ФТ) – реализуемые программой функции.

Исчерпывающее тестирование программной системы невозможно. Стремиться построить «эффективные ТНД», т.е. имеющие наивысшую вероятность обнаружения большинства ошибок. Для этого придерживаются определенных правил и рекомендаций, используя специальные средства. Следует сочетать СТ и ФТ.

(СТ) Структурное тестирование

«Тестирование белого ящика», т.е. предполагается детальное знание программы, ее логика и конструкции. Общий подход таков:

каждый путь в программе должен быть пройден хотя бы один раз. Для формирования ТНД руководствуются следующими критериями:

1. покрытие операторов – требует таких ТНД, чтобы каждый оператор программы выполнился хотя бы один раз.

2. покрытие узлов ветвления – требует обеспечить в каждом узле ветвления прохода как ветви «истина», так и по ветви «ложь».

3. комбинаторное покрытие условий – требует испытания всех вариаций или комбинаций результатов условия. Предназначен для выявления ошибок формальной логики.

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

(ФТ) Функциональное тестирование

Тестирование по входу/выходу. «Черный ящик».

Неизвестны текст программы и ее логика. Исходной информацией для построения ТНД служат функциональные спецификации программы, т.е. описание того, что должна делать программа.

Основные методы ФТ:

  1. связывание выходов со входами (ситуация – эффект)

  2. эквивалентное разбиение

  3. анализ граничных значений

  4. предположение об ошибке

1. Должен обеспечить проверку функциональных выходов программы.

Необходимо получить все имеющиеся в проге выходы.

В основе метода преобразование входной спецификации задачи в соотношение причин и следствий. Для связывания причин и следствий (входов и выходов) используются такие средства, как ТР, ДР, ФД.

2. Эквивалентное разбиение.

Метод ориентирован на 2 положения:

  1. каждый тест должен включать столько различных входных условий, сколько это возможно, с тем чтобы минимизировать общее число необходимых тестов.

  2. входная область программы должна разбиваться на конечное число классов эквивалентности (КЭ), так чтобы каждый тест, представляющий класс, был эквивалентен любому другому тесту этого класса. Т.е. если один тест данного КЭ обнаруживает ошибку, то следует ожидать, что и все другие тесты будут обнаруживать ту же ошибку.

Разработка тестов этим методом осуществляется в 2 этапа:

  1. выделение КЭ

  2. построение тестов

1. Классом эквивалентности называют множество входных значений, каждое из которых имеет одинаковую вероятность обнаружения конкретного типа ошибки. КЭ выделяются путем выявления каждого входного условия и разбиения его на 2 или более групп. Для любого условия существуют правильный (предоставляющий правильные входные данные программы) и неправильный (ошибочные входные значения) КЭ.

КЭ формируют в таблицы вида:

входные условия

правильные КЭ

неправильные КЭ

При выделении КЭ следует использование следующих правил:

  1. если входное условие описывает область значений, то определяется один правильный КЭ и два неправильных.

  2. если входное условие описывает множество конкретных входных значений, причем каждое их них программа трактует особо, то определяется правильный КЭ для каждого значения и один неправильный.

  3. если входное условие описывает ситуацию «должно быть», то определяется один правильный КЭ и один неправильный.

  4. если есть основание считать, что различные элементы класса трактуются программой не одинаково, то данный КЭ разбивается на меньшие.

2. Построение тестов.

Этот процесс включает:

  1. назначение каждому КЭ уникального номера.

  2. проектирование новых тестов, каждый из которых покрывает как можно большее число непокрытых правильных КЭ до тех пор, пока все правильные КЭ не будут покрыты.

  3. проектирование новых тестов, каждый из которых покрывает один и только один из непокрытых неправильных КЭ.

Анализ граничных условий (значений)

Граничные условия – это ситуации, возникающие непосредственно на границах, выше или ниже границ входных и выходных КЭ.

Общие правила этого метода.

1. Построить тесты для границ области и тесты с неправильными данными для незначительных выходов за границей области. Если входное условие описывает область значений

(-1:0) : (+1:0) то,

Привести тесты для

(-1.0; 1.0; -1.001; 1.001)

2. Построить тесты для мин. и макс. значений условий и тесты: больше и меньше этих значений, если входное условие удовлетворяет дискретному ряду значений.

3. Использовать правило один для каждого выходного условия.

4. Использовать правило два для каждого выходного условия.

5. Если вход или выход программы есть упорядоченные множества (файл, таблица, лимитный список и т.д.), сосредоточить внимание на первом и последнем элементах этого множества.

6. Попробовать найти другие граничные значения (условия).

Существенное различие между анализом граничных значений и эквивалентном разбиением заключается в том, что первый исследует ситуации, возникающие на границах и вблизи (внутри и вне) границ эквивалентных разбиений. Слабость этих двух методов – они не исследуют комбинаций входных условий (действуют по локальным условиям; исследуют метод связи входов с выходами)