198
ГЛАВА 4. ЖИЗНЕННЫЙ ЦИКЛ
проектирования и стремились лишь к минимизации возвратов. ООП сразу
поставило итеративность в основу своих технологий и своих моделей жищ-
ненного цикла, по этой причине ныне часто итеративные методы органи-
зации развития программных систем отождествяют с объектно-ориентиро-
ванными, ставя (как мы уже отмечали для сентенциального и «логического»
программирования) второстепенные признаки на главное место и абсолюти-
зируя конкретную реализацию
4
. Здесь выделяются те особенности итератив-
ной разработки программ, которые (хоть и были в большинстве своем в ООП
впервые либо рассмотрены и использованы,либо развиты и доведены до тех-
нологических решений) не зависят от нынешних конкретных реализаций и
могут быть перенесены, в частности, на функциональный и сентенциальный
стили, также допускающие итеративное развитие программ, но менее задей-
ствованнные в современных технологиях.
Функциональный стиль соответствует абстрактному (математическому)
мышлению, объектно-ориентированный — образному (визуальному), сен-
тенциальный — вербальному (словесному). Большие и успешные проекты,
использующие итеративное развитие, имеются на базе каждого из этих сти-
лей. Если ООП является стандартным методом индустриального программи-
рования, то функциональное программирование является одним из главных
методов сообщества
Open Source
, и в качестве итеративного проекта, реа-
лизованного на этой базе, можно сослаться хотя бы на
EMACS
(или, если
Вы признаете лишь коммерческое программное обеспечение, на
AUTOCAD
).
Сентенциальный стиль в его
PROLOG
овском варианте послужил основой ря-
да крупных баз знаний.
Если развить модель Гантера с целью учета итеративности, то, очевидно,
придется предусмотреть расщепление линии жизненного цикла, как это пред-
ставлено на рис. 4.8. Но это влечет и расщепление матрицы интенсивностей
выполняемых функций: было бы необоснованно считать, что интенсивно-
сти при возвратах сохраняются. В целом, по мере продвижения разработки
к своему завершению, они должны уменьшаться. Таким образом, матрица
интенсивностей превращается в последовательность матриц, отражающую
4
Сообщество
Open Source
также немедленно занялось разработкой технологической под-
держки итеративного стиля, и некоторые их находки,в частности, система депозитария
CVS
,
вовсю используются индустриальными фирмами. Но ООП имело преимущество в мощно-
сти и бесстыдстве рекламной кампании среди широких кругов прежде всего бизнеса, в то
время как
Open Source
делало ставку на специалистов и энтузиастов и занималось скорее
созданием общественного движения и общественного мнения. Поэтому практически все на-
ходки итеративной разработки в данный момент ассоциируются с ООП.