Добавить комментарий

Типы процессов в софтостроении

На самом деле в софтостроении есть только два типа разработки:

  1. Восходящий (снизу-вверх) - ощупывание слона толпой слепцов.
  2. Нисходящий (сверху-вниз) - создание модели сферического коня в вакууме.

Все остальные методики являют собой смесь вышеназванных в разной консистенции.

Например, спиральная методика типа RUP - последовательное построение сферических коней в вакууме, с каждым витком приближающихся к ожидающим в стойле скакунам, беспрерывно поднимающим хвост на ходу.

Гибкая "наживулька"-agile - последовательное ощупывание только одной части тела слона согласно ежедневно переутверждаемому плану. И т.д.

Другая классификация связана с понятиями компиляции и интерпретации.

  1. Восходящий (снизу-вверх) - интерпретация.
  2. Нисходящий (сверху-вниз) - компиляция.

В классической водопадной модели все требования к системе "компилируются" за 1 проход. В спиральной - за несколько проходов. В наживулечно-гибкой - интерпретируются построчно, возврат к уже интерпретированной строке вызывает новый виток её ре-интерпретации с учетом контекста ("мы не так поняли").