Методология быстрой разработки приложений (RAD).
Одним из возможных подходов к разработке ИС в рамках спиральной модели ЖЦ является получившая в последнее время широкое распространение методология быстрой разработки приложений RAD (Rapid Application Development). Под этим термином обычно понимается процесс разработки ИС, содержащий 3 элемента: (1)небольшую команду программистов (от 2 до 10 человек); (2)короткий, но тщательно проработанный производственный график (от 2 до 6 мес.); (3)повторяющийся цикл, при котором разработчики, по мере того, как приложение начинает обретать форму, запрашивают и реализуют в продукте требования, полученные через взаимодействие с заказчиком. ЖЦ ИС по методологии RAD: 1. фаза анализа и планирования требований. Пользователи системы определяют функции, которые она должна выполнять, выделяют наиболее приоритетные из них, требующие проработки в первую очередь, описывают информационные потребности. Результатом данной фазы должны быть список и приоритетность функций будущей ИС, предварительные функциональные и информационные модели ИС. 2. фаза проектирования. Часть пользователей принимает участие в техническом проектировании системы под руководством специалистов-разработчиков. CASE-средства используются для быстрого получения работающих прототипов приложений. Пользователи, непосредственно взаимодействуя с ними, уточняют и дополняют требования к системе, которые не были выявлены на предыдущей фазе. Также происходит определение набора необходимой документации. Результатом данной фазы должны быть: ●общая информационная модель системы; ●функциональные модели системы в целом и подсистем, реализуемых отдельными командами разработчиков; ●точно определенные с помощью CASE-средства интерфейсы между автономно разрабатываемыми подсистемами; ●построенные прототипы экранов, отчетов, диалогов. 3. фаза построения. Выполняется непосредственно сама быстрая разработка приложения. На данной фазе разработчики производят итеративное построение реальной системы на основе полученных в предыдущей фазе моделей, а также требований нефункционального характера. Результатом фазы является готовая система, удовлетворяющая всем согласованным требованиям. 4. фаза внедрения. Производится обучение пользователей, организационные изменения и параллельно с внедрением новой системы осуществляется работа с существующей системой (до полного внедрения новой). Недостатки RAD: (1) основное внимание уделяется экранным формам; (2) модули проектируются изолированно, что приводит к большому кол-ву ошибок при интеграции, а так же дублированию функций и данных; (3) отсутствие или недостаточность документации; (4) обработка внештатных ситуаций производиться отдельно для каждого модуля, что приводит к неустойчивой работе системы в проблемных ситуациях. Не подходят для разработки по методологии RAD приложения, в которых отсутствует ярко выраженная интерфейсная часть, наглядно определяющая логику работы системы (н-р, приложения реального времени) и приложения, от которых зависит безопасность людей (н-р, управление самолетом или атомной электростанцией), так как итеративный подход предполагает, что первые несколько версий наверняка не будут полностью работоспособны, что в данном случае исключается. Методология RAD неприменима для построения сложных расчетных программ, операционных систем или программ управления космическими кораблями, т.е. программ, требующих написания большого объема (сотни тысяч строк) уникального кода. Основные принципы методологии RAD: (1) разработка приложений итерациями; (2) необязательность полного завершения работ на каждом из этапов жизненного цикла; (3) обязательное вовлечение пользователей в процесс разработки ИС; (4) необходимое применение CASE-средств, обеспечивающих целостность проекта; (5) необходимое использование генераторов кода; (6) использование прототипирования, позволяющее полнее выяснить и удовлетворить потребности конечного пользователя; (7) тестирование и развитие проекта, осуществляемые одновременно с разработкой; (8) ведение разработки немногочисленной хорошо управляемой командой профессионалов; (9) грамотное руководство разработкой системы, четкое планирование и контроль выполнения работ.
|