Единый графический
язык.
CASE-технологии
обеспечивают всех участников
проекта, включая заказчиков, единым
строгим, наглядным и интуитивно
понятным графическим языком, позволяющим
получать обозримые компоненты
с простой и ясной структурой.
При этом программы представляются
двумерными схемами (которые проще
в использовании, чем многостраничные
описания), позволяющими заказчику
участвовать в процессе разработки,
а разработчикам – общаться
с экспертами предметной области,
разделять деятельность системных
аналитиков, проектировщиков и программистов,
облегчая им защиту проекта перед
руководством, а также обеспечивая легкость
сопровождения и внесения изменений в
систему.
Единая база
данных проекта.
Основа CASE-технологии
– использование базы данных проекта
(репозитория) для хранения всей информации
о проекте, которая может разделяться
между разработчиками в соответствии
с их правами доступа. Содержимое
репозитория включает не только информационные
объекты различных типов, но и
отношения между их компонентами,
а также правила использования
или обработки этих компонентов.
Репозиторий может хранить свыше
100 типов объектов: структурные диаграммы,
определения экранов и меню, проекты
отчетов, описания данных, логика обработки,
модели данных, их организации и
обработки, исходные коды, элементы данных
и т. п.
Интеграция
средств.
На основе
репозитория осуществляется интеграция
CASE-средств и разделение системной
информации между разработчиками. При
этом возможности репозитория обеспечивают
несколько уровней интеграции: общий
пользовательский интерфейс по всем
средствам, передачу данных между средствами,
интеграцию этапов разработки через
единую систему представления фаз
жизненного цикла, передачу данных и
средств между различными платформами.
Поддержка коллективной
разработки и управления проектом.
CASE-технология
поддерживает групповую работу
над проектом, обеспечивая возможность
работы в сети, экспорт-импорт
любых фрагментов проекта для
их развития и/или модификации,
а также планирование, контроль,
руководство и взаимодействие, т.
е. функции, необходимые в процессе
разработки и сопровождения проектов.
Эти функции также реализуются на основе
репозитория. В частности, через репозиторий
может осуществляться контроль безопасности
(ограничения и привилегии доступа), контроль
версий и изменений и др.
Макетирование.
CASE-технология
дает возможность быстро строить
макеты (прототипы) будущей системы,
что позволяет заказчику на
ранних этапах разработки оценить,насколько
она приемлема для будущих
пользователей и устраивает его.
Генерация документации.
Вся документация
по проекту генерируется автоматически
на базе репозитория (как правило, в
соответствии с требованиями действующих
стандартов). Несомненное достоинство
CASE-технологии заключается в том,
что документация всегда отвечает текущему
состоянию дел, поскольку любые
изменения в проекте автоматически
отражаются в репозитории (известно,
что при традиционных подходах к
разработке программного обеспечения
документация в лучшем случае запаздывает,
а ряд модификаций вообще не находит в
ней отражения).
Верификация проекта.
CASE-технология
обеспечивает автоматическую верификацию
и контроль проекта на полноту
и состоятельность на ранних
этапах разработки, что влияет
на успех разработки в целом.
Автоматическая
генерация объектного кода.
Генерация программ
в машинном коде осуществляется на
основе репозитория и позволяет автоматически
построить до 85-90% объектного кода или
текстов на языках высокого уровня.
Сопровождение
и реинжиниринг.
Сопровождение
системы в рамках CASE-технологии характеризуется
сопровождением проекта, а не программных
кодов. Средства реинжиниринга и обратного
инжиниринга позволяют создавать модель
системы из ее кодов и интегрировать полученные
модели в проект, автоматически обновлять
документацию при изменении кодов и т.
п.
Использование
CASE-технологии способно принести следующие
выгоды:
- высокий
уровень технологической поддержки процессов
разработки и сопровождения программного
обеспечения;
- положительное
воздействие на некоторые или все из перечисленных
факторов: производительность, качество
продукции, соблюдение стандартов, документирование;
- приемлемый
уровень отдачи от инвестиций в CASE-средства.
Практически
невозможно, чтобы в процессе одного
внедрения CASE-средств были достигнуты
все положительные результаты. Тем
не менее, любая организация может выработать
собственные идеи относительно ожидаемых
результатов.
Реалистичные
ожидания:
- ускорение
и повышение согласованности разработки
приложений;
- снижение
доли ручного труда в процессе разработки
и/или эксплуатации;
- более
точное соответствие приложений требованиям
пользователей;
- отсутствие
необходимости большой переделки приложений
для повышения их эффективности;
- улучшение
реакции службы эксплуатации на требования
внесения изменений и усовершенствований;
- лучшее
документирование;
- улучшение
коммуникации между пользователями и
разработчиками;
- последовательное
и постоянное повышение качества проектирования;
- более
высокие возможности повторного использования
разработок;
- лучшая
прогнозируемость затрат.
Нереалистичные
ожидания:
- отсутствие
воздействия на общую культуру и распределение
ролей в организации;
- понимание
проектных спецификаций неподготовленными
пользователями;
- сокращение
персонала, связанного с информационной
технологией;
- уменьшение
степени участия в проектах
высшего руководства и менеджеров, а также
экспертов предметной области, уменьшение
степени участия пользователей в процессе
разработки приложений;
- немедленное
повышение продуктивности деятельности
организации;
- достижение
абсолютной полноты и непротиворечивости
спецификаций;
- автоматическая
генерация прикладных систем из проектных
спецификаций;
- немедленное
снижение затрат, связанных с информационной
технологией;
- снижение
затрат на обучение.
Реализм в
оценке ожидаемых затрат имеет особенно
важное значение, поскольку позволяет
правильно оценить отдачу от инвестиций.
Затраты на внедрение CASE-средств
обычно недооцениваются, хотя конкретных
статей затрат на внедрение потребуют:
- специалисты
по планированию внедрения CASE-средств;
- выбор
и установка средств;
- учет
специфических требований персонала;
- приобретение
CASE-средств и обучение;
- настройка
средств;
- подготовка
документации, стандартов и процедур использования
средств;
- интеграция
с другими средствами и существующими
данными;
- освоение
средств разработчиками;
- технические
средства;
- обновление
версий.
Критерии
оценки и выбора CASE-средств
Эффективность
применения CASE-технологий обеспечивается
грамотным и обоснованным их выбором
и продуманным использованием.
К основным критериям
оценки и выбора CASE-средств относятся:
- среда
функционирования: проектная среда, программное
обеспечение/технические средства, технологическая
среда;
- функции,
ориентированные на фазы жизненного цикла:
моделирование, реализация, тестирование;
- общие
функции: документирование, управление
конфигурацией, управление проектом;
- надежность;
- простота
использования;
- эффективность;
- сопровождаемость;
- переносимость;
- общие
критерии (стоимость, затраты, эффект внедрения,
характеристики поставщика).
Процесс внедрения
CASE-средств состоит из следующих
этапов:
- определение
потребностей в CASE-средствах;
- оценка
и выбор CASE-средств;
- выполнение
пилотного проекта;
- практическое
внедрение CASE-средств.
Процесс оценки
и выбора CASE-средств может преследовать
несколько целей и включать:
- оценку
нескольких CASE-средств и выбор одного
или более из них;
- оценку
одного или более CASE-средств и сохранение
результатов для последующего использования;
- выбор
одного или более CASE-средств с использованием
результатов предыдущих оценок.
Переход к
практическому использованию CASE-средств
начинается с разработки и последующей
реализации плана перехода. План перехода
должен включать следующее:
- информацию
относительно целей, критериев оценки,
графика и возможных рисков, связанных
с реализацией плана;
- информацию
относительно приобретения, установки
и настройки CASE-средств;
- информацию
относительно интеграции каждого средства
с существующими средствами, включая как
интеграцию CASE-средств друг другом, так
и их интеграцию в процессы разработки
и эксплуатации программного обеспечения,
существующие в организацию;
- ожидаемые
потребности в обучении и ресурсы, используемые
в течение и после завершения процесса
перехода;
- определение
стандартных процедур использования средств.
Использование
CASE-технологий требует постоянного
мониторинга использования CASE-средств,
обеспечения текущей поддержки,
сопровождения и обновления средств
по мере необходимости. При этом достигнутые
результаты должны периодически подвергаться
экспертизе в соответствии с графиком,
а план перехода – корректироваться
при необходимости. Кроме этого,
необходимо уделять внимание удовлетворению
потребностей организации и критериям
успешного внедрения CASE-средств, а
также обучению сотрудников. При
этом стратегия выбора CASE-средств
для конкретного применения в
общем случае зависит от целей, потребностей
и ограничений будущего проекта
(включая квалификацию участвующих
в процессе проектирования специалистов
), которые, в свою очередь, определяют
используемые методы проектирования.
Определение
потребностей в CASE-средствах можно
проиллюстрировать следующей диаграммой
(см. рис.4.).
Рисунок 4. Определение
потребностей в CASE-средствах
Переход
к практическому использованию CASE-средств
Процесс перехода
к практическому использованию CASE-средств
начинается с разработки и последующей
реализации плана перехода. Этот план
может отражать поэтапный подход
к переходу, начиная с тщательно
выбранного пилотного проекта до
проектов с существенно возросшим
разнообразием характеристик.
Процесс перехода
к практическому использованию
CASE-средств состоит из следующих этапов:
- Разработка
плана перехода. Сюда входят:
- цели,
критерии оценки, график и риски, связанные
с планом перехода;
- приобретение,
установка и настройка средств;
- интеграция
средства с существующими средствами
и процессами;
- обучение
и ресурсы, используемые в течение и после
завершения процесса перехода;
- определение
стандартов и процедур использования
средств.
- Реализация
плана перехода. Сюда входят:
- периодические
экспертизы;
- текущая
поддержка.
- Оценка
результатов перехода.
Для поддержки процесса
перехода к практическому использованию
средств желательно выполнение следующих
действий:
- Поддержка текущего обучения.
Потребность в обучении может возникать
периодически вследствие появления новых
версий средств или вовлечения в проект
новых сотрудников.
- Поддержка ролевых функций,
связанных с процессом внедрения. Поскольку
внедрение CASE-средств приводит к изменениям
в культуре организации, необходимо в
процессе внедрения выделить ряд ключевых
ролей (такие, как руководство высшего
уровня, проектная группа и целевые группы).
- Методики управления обновлением
версий. Эти методики могут быть связаны
с обновлением версий, процедурами установки,
процедурами контроля качества для оценки
новых версий, процедурами обновления
базы данных, конфигурацией версий и средой
поддержки (другие средства, операционная
система и т.д.).
- Свободный доступ к информации.
Должны быть определены механизмы, обеспечивающие
свободный доступ к информации об опыте
внедрения и извлеченных из этого уроках,
включая доски объявлений, информационные
бюллетени, пользовательские группы, семинары
и публикации.
- Налаживание тесного рабочего
взаимодействия с поставщиком. Такое взаимодействие
позволяет организации быть в курсе планов
поставщика и обеспечивать оперативное
удовлетворение своих требований.
Одна общая ошибка, которая
делается в процессе перехода, заключается
в недооценке ресурсов, необходимых
для поддержки постоянного использования
сложных CASE-средств. Рост необходимых
ресурсов вызывается тремя причинами: