Лекция 3

Процесс разработки программ СПС в соответствии СТБ ИСО/МЭК 12207-2003

Определяет работы и задачи разработчика. Данный процесс включает работы по анализу требований, проектированию, программированию, сборке, тестированию, вводу в действие и приемке ПП или системы. Он состоит из 13 работ. Одна из первых работ - анализ требований(центральное понятие).

Понятие функции и требования к ПС(ПО) или системе.

Очевидно что невозможно создать ПО, если не понимать реальные потребности заказчика. В общем потребности заказчика неконкретны и неоднозначны. Обычно заказчик описывает свои пожелания в абстрактной форме, например:

  1. Необходимо чтобы ПС имело дружественный интерфейс.
  2. Необходимо чтобы разрабатываемое ПС предоставляло текущую информацию о вкладах клиентов банка и т.п.

Таким образом пользователь описывает свойства разрабатываемого ПС, которые ему необходимы. На данном уровне детализации требования к ПС называются пользовательскими требованиями или функциями (feature). В общем функции представляют собой описание желаемого поведения разрабатываемого ПС и служат основой для формирования требований разработчика ПС. В общем случае каждая пользовательская функция порождает одно или несколько требований разработчика, которые представляют собой детализированные описание пользовательских функций. Очевидно что вторая функция (про банк) является функцией и не является требованием разработчика к ПС, так как здесь ничего не говорится о формате выводимых данный, количеству атрибутов, типу валюты, т.п. В общем такую функцию можно представить набором требований разработчика, например информацию о текущих клиентах банка предоставлять в виде печатной формы, представленной в виде следующей таблицы, где все расписано до мелочей.

Документом, в котором представлены требования к разрабатываемому ПС является спецификация требований к программному средству. В ней прописывается что должно выполнять разрабатываемое ПС, но не как.

1-я работа

Разработчик должен определить или выбрать модель ЖЦПС, соответствующую области реализации, величине и сложности проекта. Также он должен выбрать или адаптировать те стандарты, методы, языки программирования для выполнения работ в процессе разработки.

2-я работа - анализ требований к системе.

Разработчик должен выполнить анализ области применения разрабатываемой системы, с точки зрения определения требования к ней. Требования к системе должны охватывать:

При этом требования к системе должны быть оценены с учетом следующих критериев:

Результатом данной работы является спецификация требований к системе (System requirements specification)

3-я работа - проектирование системной архитектуры.

Должна быть определена общая архитектура системы(архитектура верхнего уровня). В ней должны быть указаны объекты технических и программных средств и ручных операций. Ручные операции - те операции, которые пользователь выполняет вручную, т.к. большинство разрабатываемых систем являются автоматизированными (требуют оператор ввода). Затем должно быть обеспечено распределение всех требований к системе между объектами архитектуры. Должны быть определены конфигурации технических и программных средств, ручных операций на объекты программных и технических средств. Разработанная системная архитектура и требования к объектам архитектуры должны быть оценены с учетом следующих критериев:

4-я работа - анализ требований к ПС.

Данная работа состоит из следующих задач, применительно к каждому объекту программному архитектуры:

  1. Разработчик должен установить и документально оформить следующие требования к ПС:

    • Функциональные и не функциональные (технические) требования.
    • Требования к внешним интерфейсам программного объекта архитектуры.
    • Квалификационные требования.
    • Требования безопасности и защиты.
    • Эргономические требования, включая требования относящиеся к ручным операциям (человек -машина).
    • Требования к определению данных и базам данных.
    • Требования по вводу в действие и приемке поставляемого ПП на объектах эксплуатации и сопровождения.
    • Требования к документации пользователя.
    • Требования к эксплуатации объекта пользователя.
    • Требования к обслуживанию.
  2. Разработчик должен оценить требования к ПС по следующим критериям:

    • Учет требований к системе и проекту системы.
    • Согласованность требований к системе.
    • Согласованность требований объектов между собой.
    • Тестируемость требований.
    • Выполнимость программного проекта.
    • Возможность эксплуатации и сопровождения.

Результатом 4-й работы является SRS (software requirement specification).

5-я работа - проектирование программной архитектуры.

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