И. Соммервилл - Инженерия программного обеспечения (1133538), страница 111
Текст из файла (страница 111)
3. Проводится тестирование системы с подобранными данными и подсчитывается число отказов. Также фиксируется количество повторов этих отказов. Как отмечалось в главе 17, выбранные врелгеннме единицы должны подходить для используемых показателей. 4. После получения статистически значимого количества отказов следует этап вычис. пения показателей безотказности системы. 21. Аттестация критических систем 431 Определение онеранноннош профили Пояшова набора тестовых денных Вычисление пошэатеней безотеазностн Тесгнрошнне системы Рис. 21.1.
Процесс из нврвннл понпзпоилгй бвзоткпзлтгти !. Пгопрвдвзвнмоапь огмрпциопного прорТюш. Профили могут неточно отражать реальное использование системы. 2. Высохпя гтокмоголь гвнврпции тгсотвых данных. Если нет возможности автоматической генерации тестовых данных, то создание большого количества тестовых данных занимаетмиого времени.
3. Свттшншчгпгпв нгопргдаленноазль в глучпе высокой бвзоткпзиости. Для точного измерения показателей безотказности необходимо сгенерировать статистически значи. мое число отказов. Конечно, разработка точного операционного профллля возлюжпа только для систем, имеющих стандартный шаблон использования.
Что касается других систем, то здесь кюк. дый пользователь люжет обращаться с системой по.своему. Как уже отмечэлось в главе !б, разные пользователи люот иметь различные взгляды па безотказность системы именно потому, что опн используют разные се функции и средства. ! !е самым лучшим методом генерации большого множества данных, используемого для измерения безотказности, оказывается применение некоторых видов генераторов тесто.
вых данных, которые могут автоматически создавать входные данные, соответствующие операционным профилям. Как правило, невозможно автоматизировать создание всех необходимых тестовых данных для интерактивных систем. !!аборы данных длл них должны создаваться вручную, а следовательно, с более высокими затратами. Статистическая неопределенность — одна нз основных проблем при измерении беэот.
казиостн системы. '!тобы оценка показателей безотказности была нанболес точной, нс. достаточно просто спровоцировать в системе однц сбой. Для точной оценки безотказности необходимо сгенерировать статистически значимое количество сбоев, В такой ситуации задача оценинання безотказности сводится в лучшем случае к минимизации количества ошибок н системе.
в хулплем — к измерению вффсктинпости ллетола мипиллизацпн ошибок. Если в спецификации определен очень высокил! уровень безотказности, то, как правила, генерация достаточного количсстна отказов в системе становится эконома. чески невыголной. 21.2.1. Операционные профили Операционный профиль отражает практику использования системы. Он состоит нз спецификации классов входных данных и всролтности их понвления.
В тех случалх, когда повея система ПО устанавливается вместо уже существующей, вероятный шаблон использования новой системы построить сравнительно легко. Он должен соответствовать "обычному" использованию старой системы пчюс дополнительные возможности, обусловленные наличием новых функций, вкзюченных н новое ПО, Например, нетрудно по- Данный метод иногда называют статистическим тестированием. Цель статиспзчсского тестирования — оценить беэотюзность системы [284].
Статистическое тестирование противоположно тестированию дефектов, проводнмолзу в целых обнаружения ошибок в системе. Этот канцон луально привлекательный метод измерения безотказности не так прост для применения на практике. Принципиальные трудности возникают но нескольким причинам. 432 Масть Ч.
Верификация и аттестация строить операционный профиль для телекоммуникационных систем коммутации, по. скольку телекоммуникационным компаниям известны шаблоны вызовов, которые обрабатываются в этих системах. Обычно в операционном профиле входные данные с высокой вероятностью ввода раз. деляются на несколько небольших классов, на рис. 21.2 они показаны слева, а справа расположены классы вкодных данных, ввод которых мало вероятен, но возможен. Этих классов обычно очень много. Кнасси исявц дэнн на Ркс.
2Е2. Оперпчионный яуннйкль В работах )246, 247) предложены правила разработки операционных профилей. Эти правила основаны иа опыте построения операционных профилей для систем телекоимуникаций. Здесь накоплен достаточный опыт использования таких систем, поэтому процесс разработки операционных профилей относительно прост. Для систем, имеющих около 15 человеко-лет развития, операционный профиль был разработан примерно за 1 человеко.
месяц. В других случаях создание операционного профиля заняло больше времени (2-3 человеко. года), однако, расходы на него полностью окупились после выпуска последующих систем. В этих работах подсчитано, что телекоммуникационная компания получила по крайней мере 10-кратное возмещение от инвестиций, вложенных в разработ. ку операционных профилей. Если система ПО инновационная, предвидеть, как она будет использоваться, намного сложнее. Система используется различными группами пользователей с разными ожиданиями, знаниями и опытом. У новых систем нет предыстории использования, и для работы с ниии пользователи часто применяют способы, не предусмотренные разработчиками системы.
Еще одна проблема состоит атом, что операционный профиль может меняться в ходе использования системы. По мере накопления опыта работы с системой навыки и уверенность пользователей лненяются, и со временем они начинают использовать ПО бо. лес изощренными способал~и. Все эти причины часто не позволяют разработать надежный операционный профиль ) 152). В подобных ситуациях гложно оценить степень неопределенности в измерении показателей безотказности систем, 21.2.2. Оценивание безотказности Во время аттестации ПО менеджеры должны уделить основное внимание тестирова.
нию системы. Так как тестирование — очень дорогой процесс, важно завершить его как можно раньше, причем так, чтобы впоследствии не пришлось тестировать систему по- 21. Аттестация критических систем 433 вторно. Тестирование завершается, если достигнут необходимый уровень безотказносги системы. Конечно, иногда выясняется, что требующийся уровень безотказности никогда не будет достигнут. В этом случае менеджер должен принять нелегкое решение о переработке некоторых частей системы или перезаключении контракта с заказчиком. Модель возрасгания безотказности- "показывает, как меняетсв безотказность системы в процессе тестирования.
Ошибки исправляются по мере обнаружения, так что во время тестирования и отладки системы ее безотказность должна возрастать. Для практического оценивания безотказности концептуальную модель возрастания безотказности необходимо преобразовать в математическую. Здесь не будет подробно рассматриваться такое пре.
образование, обсудим только саму модель возрастания безотказности. Во многих предметных областях на основании экспериментов по оцеиивапию бсзот. казности создается множество моделей возрастания безотказности. Самал простая — это модель ступенчатой функции (190), в которой при обнаружении и исправлении ошибки безотказность каждый раз возрастает на постоянную величину (рис. 21З). В этой модели предполагается, что ошибки всегда исправляются без внесения новых ошибок, поэтому количество отказов н связанных с ними ошибок со временем уменьшается. Соответствен.
но, после исправлений ошибок интенсивность отказов должна понижаться, как показано на рис.21.3. Заметим, что интервалы времени на горизонтальной оси отражают время между повторными тестированиями системы (после исправления обнаруженных ошибок), поэтому они, как правило, не равны друг другу. П 12 6 14 5 браня Ргес. ИЗ. Модеяь вшрпстпния беэоэшпзносгкн нп основе рпв. ггосгнуненчптой Янкгднн На самом деле в процессе отладки не всегда удается локализовать ошибки; кроме того, изменение кода может привести к появлению новых ошибок.
Вероятность появлении но. вых ошибок может превысить вероятность проявления уже исправленных ошибок, в иго. ге безотказность системы может не возрасти, а наоборот уменьшиться. В простой модели равноступенчатою возрастания безотказности также предполагает. ся, что все ошибки вносят равный вклад в безотказность, поэтому каждое исправление В Русской научной лккийптуйе эту модель (точит, икегнтео моделей) чппео нпэнепют тпкгее моделью /нктп к идею кости. Одя кпевп и кя являются ггеутодом с вняли гнкто гелей гдяу дгеюгуг кюгйб - Прин. перев. 434 Часть в.