Экономические оценки надежности программы.

Кортеж программы.

Оценка надежности программного обеспечения.

Факторы, влияющие на надежность ПО (кортежей):

1. Структура программы (т.е. ее исходный текст): максимально современный язык программирования с использованием методов структурного и объектно-ориентированного программирования => min скорость работы с программой, увеличение производительности.

2. Окружающая среда (оболочка) – операционная система, драйверы устройств, прикладные и системные программы.

3. Режим эксплуатации программы (правильное использование объемов данных).

4. Документация: точность и правильность составления.

Экономические характеристики показателей качества.

1. Затраты на исправление кортежа.

2. Убытки от ошибок кортежа.

Периоды эксплуатации кортежа.

1. Начальное освоение кортежа характеризуется относительно большой частотой появления ошибок из-за некорректной документации или работы программы.

2. Отладка кортежа – нормальный режим эксплуатации кортежа, характеризуется постепенным уменьшением ошибок.

3. Нормальная эксплуатация кортежа – характеризуется низкой или нулевой частотой появления ошибок.

4. Начальный износ кортежа (оборудования) – частота ошибок увеличивается, требуется корректировка документации или программы.

5. Полный отказ кортежа – требуется замена или новая установка программы.

Затем осуществляется переход на 1 этап.

Факторы, обуславливающие моральное старение кортежа:

1. Появление новых задач, не предусмотренных в данном программном продукте.

2. Окончание работ, для которых была написана программа.

3. Появление новых стандартов или требований к входной или выходной информации.

4. Изменение требований к времени решения задач.

5. Введение новой ОС или оболочки.

6. Изменение базового языка программирования.

Условие перехода на новый кортеж:

Пусть Р1 – остаточная стоимость эксплуатации старого кортежа от данного момента времени до момента окончательного старения кортежа.

Р2 – стоимость начальной эксплуатации нового кортежа за тот же период времени.

З2 – разовые затраты на освоение персоналом нового кортежа.

Э2 – экономия затрат за счет возможной автоматизации некоторых функций, которые в старой программе выполнялись вручную.

Условие эффективности перехода на новый кортеж:

Ограничения:

Исходим из того, что программа допускает ошибки, которые можно исправить двумя способами:

1. Скорректировать документацию, чтобы обходить эти ошибки.

2. Корректировка программы или не использовать функцию, которая не работает.

 

Показатели:

1. Ценовые характеристики эксплуатации:

· Средняя зарплата аналитика (Za).

· Средняя зарплата пользователя (Zп).

· Периодичность выплаты зарплаты (Tz).

· Общее число аналитиков (Ma).

· Общее число пользователей (операторов) (Mп).

 

2. Временные характеристики эксплуатации:

· Среднее время обращения к программе по существующей документации (Sо).

· Среднее время обращения к программе по скорректированной инструкции (Sи).

· Среднее время анализа ошибки и корректировки документации (Sа).

· Среднее время освоения нового кортежа аналитиком (Snа).

· Среднее время освоения нового кортежа пользователем (Snu).

· Среднее время выполнения новых функций средствами старого кортежа (Tc).

· Среднее время обращения к новой функции в новом кортеже (Тn).

· Доля обращений к новой функции среди всех обращений к кортежу (Vn).

 

3. Характеристики числа обращений и ошибок:

· Число обнаруженных ошибок в кортеже (f).

· Оценка ожидаемого числа ошибок в новом кортеже (f’).

· Оценка остаточного времени эксплуатации (То).

· Число проведенных обращений к кортежу (k).

· Время реальной эксплуатации кортежа (Т).

· Среднее число обращений к кортежу на одно повторение раздела документации или средняя повторяемость работы каждого раздела(А).

· Частота обращения к кортежу (V).

· Вероятность появления ошибки в области исходных данных (Рош).

 

2 варианта расчета эффективности:

 

1. Когда оценка ожидаемого числа ошибок в новом кортеже f’ известна.

2. Когда f’ неизвестна.

 

Рассмотри 1 вариант:

 

Пусть Со – цена обращения к кортежу при использовании нескорректированной документации:

Со=Zп·Sо/Tz

 

Си – цена дополнительной работы по выполнению скорректированной документации:

Cи=Zп·Sиz

 

Са – цена работы аналитика при разборе ошибки и выработке рекомендаций по корректировке документации:

Са=Za·Sa/Tz

 

Среднее число повторений каждой инструкции m:

m=T·V/A

за время эксплуатации.

 

Kо – ожидаемое число обращений к программе:

Kо о·V

Тогда средние прогнозируемые затраты на 1 обращение к программе по результатам времени эксплуатации Т можно определить как величину q, не превышающую значения этой величины в прошлом:

 

При достаточно большом k:

Тогда

 

 

Средние по времени затраты за дополнительное время эксплуатации программы в будущем составляют величину, не превышающую произведение стоимости 1 обращения на число обращений:

 

Отсюда затраты на дополнительное время эксплуатации равны произведению средних по величине затрат на время дополнительной эксплуатации:

Ko

 

Оценим затраты на введение нового кортежа при тех же условиях.

Рассмотрим стоимость эксплуатации нового кортежа Р2:

Р2212223

стоимость обращения к новому кортежу при использовании старой документации:

- стоимость обхода прогнозируемой ошибки при использовании скорректированной документации:

- стоимость исправления прогнозируемой ошибки:

З2 – разовые затраты на освоение персоналом новой документации:

Э2 – экономия затрат за счет автоматизации новых функций:

, где

– средний выигрыш на 1 обращении:

Т.о. имеет вид:

 

Рассмотрим вариант 2:

Полагают, что новая программа не лучше старой, т.е. число обнаруженных ошибок в старой программе равно числу прогнозируемых ошибок в новой программе.

Тогда условие перехода на новый кортеж будет выглядеть так:

 

З2 и Э2 такие же, как и в варианте 1.