Надежность

В том числе:

◆ Тестирование программы при всех допустимых спецификациях входных данных;

◆ Защита от неправильных действий пользователя;

◆ Защита от взлома — пользователи должны иметь возможность взаимодействия с ПО только через легальные интерфейсы.

 

Появление ошибок любого уровня не должно приводить к краху системы. Ошибки должны вылавливаться диагностироваться и (если их невозможно исправить) превращаться в корректные отказы.

Системные структуры данных должны сохраняться безусловно.

Сохранение целостности пользовательских данных желательно.

 

Возможность сопровождения

Возможные цели сопровождения — адаптация ПО к конкретным условиям применения, устранение ошибок, модификация.

Во всех случаях требуется тщательное структурирование ПО и носителем информации о структуре ПО должна быть программная документация.

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

Исправление ошибок требует развитой сервисной службы, собирающей информацию об ошибках и формирующей исправляющие пакеты.

Модификация предполагает изменение спецификаций на ПО.

При этом, как правило, должны поддерживаться и старые спецификации.

Эволюционное развитие ПО экономит вложения пользователей.