. Следовательно, их целесообразно использовать в сложных проектах, причем чем сложнее разрабатываемое программное обеспечение, тем больше выигрыш от использования CASE-технологий. В настоящее время практически все промышленно производимое сложное программное обеспечение разрабатывается с использованием CASE-средств.


Таблица 1

Особенности процесса разработки ПО


Таблица 2

Трудозатраты на разработку сложного ПО, %


Ускорение разработки программного обеспечения. Разработка спиральной модели жизненного цикла программного обеспечения и CASE-технологий позволили сформулировать условия, выполнение которых сокращает сроки создания программного обеспечения.

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

• поддержка полного жизненного цикла программного обеспечения;

• гарантированное достижение целей разработки с заданным качеством и в установленное время;

• возможность выполнения крупных проектов в виде подсистем, разрабатываемых группами исполнителей ограниченной численности (3–7 человек) с последующей интеграцией составных частей, и координации ведения общего проекта;

• минимальное время получения работоспособной системы;

• возможность управления конфигурацией проекта, ведения версий проекта и автоматического выпуска проектной документации по каждой версии;

• независимость выполняемых проектных решений от средств реализации (систем управления базами данных – СУБД, операционных систем – ОС, языков и систем программирования);

• поддержка комплекса согласованных CASE-средств, обеспечивающих автоматизацию процессов, выполняемых на всех стадиях жизненного цикла.

Этим требованиям отвечает технология RAD (Rapid Application Development – быстрая разработка приложений). Эта технология ориентирована, как следует из названия, на максимально быстрое получение первых версий разрабатываемого программного обеспечения. Она предусматривает выполнение следующих условий:

• ведение разработки небольшими группами разработчиков (3–7 человек), каждая из которых проектирует и реализует отдельные подсистемы проекта, позволяет улучшить управляемость проекта;

• использование итерационного подхода способствует уменьшению времени получения работоспособного прототипа;

• наличие четко проработанного графика цикла, рассчитанного не более чем на три месяца, существенно увеличивает эффективность работы.

Процесс разработки при этом делится на следующие этапы: анализ и планирование требований пользователей, проектирование, реализация, внедрение.

На этапе анализа и планирования требований формулируют наиболее приоритетные требования, что ограничивает масштаб проекта.

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

Под функциональной точкой в технологии RAD понимают любой из следующих функциональных элементов разрабатываемой системы:

• входной элемент приложения (входной документ или экранная форма);

• выходной элемент приложения (отчет, документ или экранная форма);

• запрос (пара «вопрос/ответ»);

• логический файл (совокупность записей данных, используемых внутри приложения);

• интерфейс приложения (совокупность записей данных, передаваемых другому приложению или получаемых от него).