Автоматизируя трудоемкие операции, современные CASE-средства существенно повышают производительность труда программистов и улучшают качество создаваемого программного обеспечения, а именно:
• обеспечивают автоматизированный контроль совместимости спецификаций проекта;
• уменьшают время создания прототипа системы;
• ускоряют процесс проектирования и разработки ПО;
• автоматизируют формирование проектной документации для всех этапов жизненного цикла в соответствии с современными стандартами;
• частично генерируют коды программ для различных платформ разработки;
• поддерживают технологии повторного использования компонентов системы;
• обеспечивают возможность восстановления проектной документации по имеющимся исходным кодам.
Появление CASE-технологий изменило все этапы жизненного цикла программного обеспечения, при этом наибольшие изменения касаются анализа и проектирования, которые предполагают строгое и наглядное описание разрабатываемого программного обеспечения.
В табл. 1 показано, как изменяется процесс разработки ПО при переходе к использованию CASE-средств.
Применение CASE-средств позволяет существенно снизить тру-дозатраты на разработку сложного программного обеспечения (табл. 2) в основном за счет автоматизации процессов документирования и контроля. Однако необходимо иметь в виду, что современные CASE-средства дороги, а их использование требует
Таблица 1
Особенности процесса разработки ПО
Таблица 2
Трудозатраты на разработку сложного ПО, %
Ускорение разработки программного обеспечения.
Разработка спиральной модели жизненного цикла программного обеспечения и CASE-технологий позволили сформулировать условия, выполнение которых сокращает сроки создания программного обеспечения.Современная технология проектирования, разработки и сопровождения программного обеспечения должна отвечать следующим требованиям:
• поддержка полного жизненного цикла программного обеспечения;
• гарантированное достижение целей разработки с заданным качеством и в установленное время;
• возможность выполнения крупных проектов в виде подсистем, разрабатываемых группами исполнителей ограниченной численности (3–7 человек) с последующей интеграцией составных частей, и координации ведения общего проекта;
• минимальное время получения работоспособной системы;
• возможность управления конфигурацией проекта, ведения версий проекта и автоматического выпуска проектной документации по каждой версии;
• независимость выполняемых проектных решений от средств реализации (систем управления базами данных – СУБД, операционных систем – ОС, языков и систем программирования);
• поддержка комплекса согласованных CASE-средств, обеспечивающих автоматизацию процессов, выполняемых на всех стадиях жизненного цикла.
Этим требованиям отвечает
• ведение разработки небольшими группами разработчиков (3–7 человек), каждая из которых проектирует и реализует отдельные подсистемы проекта, позволяет улучшить управляемость проекта;
• использование итерационного подхода способствует уменьшению времени получения работоспособного прототипа;
• наличие четко проработанного графика цикла, рассчитанного не более чем на три месяца, существенно увеличивает эффективность работы.
Процесс разработки при этом делится на следующие этапы: анализ и планирование требований пользователей, проектирование, реализация, внедрение.
На этапе
На этапе
Под
• входной элемент приложения (входной документ или экранная форма);