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