Лекция №3Основные области знаний SWEBOK
В третьей лекции по программной инженерии речь идет о пяти основных областях знаний из стандарта SWEBOK. Эти области соответствуют пяти процессам разработки программного обеспечения:
- инженерия (выработка) требований;
- проектирование;
- конструирование (т.е. написание кода);
- тестирование;
- сопровождение.
SWEBOK формализует ключевые понятия для каждого из этапов разработки ПО. Например, в области знаний «Тестирование» определяется, что такое сбой (fault) программы и как он связан с ошибкой (error), допущенной программистом.
Кроме того, области знаний содержат определенные инструкции по управлению процессами разработки. Так, управление конструированием включает три этапа:
- создание модели процесса в зависимости от выбранной модели разработки;
- планирование, определение расписания работ;
- измерение показателей для корректирования разработки по мере ее выполнения.
В то же время, SWEBOK не детализует взаимодействие между различными процессами разработки. Связь между процессами сильно зависит от выбранной модели разработки. Например, в каскадной модели процессы выполняются последовательно в порядке их перечисления выше: сначала определяются требования, потом проектируется архитектура модели, и так далее. Согласно же гибкой методологии (agile development) требования к продукту уточняются по мере разработки, а тестирование неразрывно связано с проектированием и разработкой (разработка через тестирование, test-driven development).