Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Техн. прогр. - Конспект лекций.doc
Скачиваний:
49
Добавлен:
13.11.2019
Размер:
912.38 Кб
Скачать

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

  1. Стандарты ISO 9000-9004. Необходимые условия для достижения минимального уровня организации процесса ППО.

  2. CMM (Capability Maturity Model) – модель зрелости процессов создания ПО. Включает 5 уровней: начальный, повторяемый, определённый, управляемый, оптимизирующий.

  3. SPICE (Software Process Improvement and Capability dEtermination) (ISO/IES 15504) – определение возможностей и улучшение процесса создания программного обеспечения.

Проектирование надёжного ПС.

Майерс: «В программном обеспечении имеется ошибка, если оно не выполняет того, что пользователю разумно от него ожидать». Ошибки в ПО не являются внутренним его свойством. Наличие ошибок зависит как от самого программного обеспечения, так и от ожиданий пользователя.

Надёжность программного обеспечения есть вероятность его работы без отказов в течение определённого периода времени, рассчитанная с учётом стоимости для пользователя каждого отказа.

Почему техника надёжнее программ?

1. Большее разнообразие входных данных.

2. Отношение к возможным применениям.

3. Различная природа компонент.

Макромодель перевода. проектирование программного обеспечения состоит из ряда этапов.

На каждом из этапов возможны ошибки по взаимодействию исполнителей.

Микромодель перевода.

Чтение  Запоминание  анализ  распространение

Причины ошибок:

- чтение между строк  всё, что непонятно, надо уточнять у автора документа;

- непонимание;

- нечёткое выражение мыслей.

Четыре подхода к надёжности.

1. Предупреждение ошибок.

2. Обнаружение ошибок.

3. Исправление ошибок.

4. Устойчивость к ошибкам.

- динамическая избыточность (неприменимо);

- отступление (обработка исключений try – throw – catch);

- изоляция ошибок (задача ОС).

Борьба со сложностью.

Сложность – основная причина ошибок перевода, и, следовательно, одна из главных причин ненадёжности.

Концепции:

- независимость – компоненты должны быть максимально независимы;

- иерархическая структура.

Проектирование.

- вовлечение пользователя в процесс принятия решений;

- понимание культуры пользователя;

- умение правильно ставить и решать задачи.

Процессы проектирования.

Проектирование программного обеспечения состоит из ряда этапов. Точное выполнение этих этапов позволяет создавать достаточно надёжные программное продукты.

Требования, цели

Проекты: управляемые пользователем, контролируемые пользователем, независимые от пользователя.

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

Оглавление – описание иерархии задач со ссылками на диаграммы. Диаграммы содержат вход (слева), обработку (по центру), выход (справа).

Цели – конкретные ориентиры программного продукта.

Типичные ошибки:

- неявное формулирование целей;

- составление наброска без учёта всех целей;

- есть конфликты при формулировании целей (должны быть компромиссы);

Цели ПО могут быть разбиты на 10 групп:

- общность – число, мощность, область действия пользовательских функций;

- психологические факторы – мера лёгкости понимания, удобства использования, защиты от неверных действий пользователя;

- адаптируемость – мера лёгкости расширения;

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

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

- документация;

- стоимость продукта;

- календарный план;

- эффективность (производительность);

- надёжность (средства повышения надёжности снижают эффективность).