

7. CASE-средства проектирования
CASE - это программное средство, поддерживающее автоматизацию некоторой совокупности процессов и работ жизненного цикла программного изделия (программа для разработки программ).
Основные области автоматизации:
1. Управление требованиями.
2. Создание проектных моделей (функциональные модели данных, объектные модели).
3. Поддержка вспомогательных процессов: тестирование.
· Создавать тесты, библиотеки тестов.
· Документация: оформление, документирование.
· Управление конфигурацией (отслеживание копий разрабатываемого ПО).
Черты CASE:
1. Мощная графика.
2. Поддержка стандартов проектирования.
3. Использование накапливаемых шаблонов проектирования.
4. Поддержка контроля правильности (правильность элементов, полнота, соответствие).
5. Поддержка многопользовательской работы.
6. Использование репозитария для хранения проектных и служебных данных.
· Хранение шаблонов проектирования.
· Хранение версий проектных решений.
· Поддержка многопользовательской работы.
· Контроль доступа (реализация различных форматов согласования).
Достоинства CASE-средств:
· Повышение производительности
· Повышение качества
· Повышение стандартизации
· Облегчение обмена
· Облегчается сопровождение
Недостатки CASE-средств:
· Разнородность продуктов, быстрая смена версий. Трудно сравнить продукты
· Дороговизна самого продукта, настройки, обучения
· Длительный срок окупаемости
· Проблема несовместимости с технологиями проектирования, с технической базой, с масштабом проекта, с содержанием (например, нет аналитики в проекте)
· Проблема с моральной неготовностью персонала
Условия применения CASE-средств:
1. Готовность организации для использования.
2. Установившийся процесс проектирования.
3. Однородный поток проекта.
ВНЕДРЕНИЕ CASE-СРЕДСТВА
1. Подготовка
· Определение потребности: область деятельности, масштаб, число пользователей.
· Определение возможностей.
· Обзор рынка.
· Определение критериев использования (внедрения).
· Стратегия использования.
2. Выбор средства
· Сбор информации (как можно больше узнать о возможностях конкурентов и претендентах на покупку). Источники: ознакомление с рекламой, изучение документации, ознакомление с демо-версией, решение контрольных примеров, общение с пользователями и экспертами, знакомство с примерами применения.
· Определение критерия выбора. Отбор критериев > выбор по критерию.
3. Выполнение проекта
· Выбор проекта: важность, сроки, типичности, объемы и финансы - выбор «золотой середины» у всех критериев, по которым выбираем.
· Реализация проекта.
· Оценка результата:
+: принимаем средство
±: сделать еще один подобный проект
-: 1) средство плохо подходит для выбранного типа проекта. Надо попробовать другой
2) отказ от этого CASE-средства
3) отказ от всех CASE-средств
4. Внедрение
· Планирование внедрения.
· Уточнение или назначение критериев внедрения.
· Реализация внедрения: обучение, выполнение работ вместе с персоналом.
· Оценка результатов:
+: принимаем -: корректировка планов
РАСПРОСТРАНЕННЫЕ CASE-СРЕДСТВА
I. а) Silverrun
Поддерживается структура функционального проектирования, любые модели жизненного цикла. Основные модули: разработка функциональных моделей, концептуальное проектирование данных, проектирование реляционных баз, построение прототипа приложения.
б)Oracle Designer
Разработка функциональных моделей, разработка концептуальных моделей, разработка иерархии функциональных блоков (похоже на схему диалога), разработка прототипа генерации типовых элементов, разработка реляционных баз, возможность использования диаграмм UML. (Oracle Developer: Oracle Designer + разработка кода).
в) Rational Rose Suite
· Rational Rose - диаграммы, код по диаграмме классов (UML).
· Requisite Pro - управление требованиями.
· Модули тестирования.
· Clear Case - средства для управления конфигурацией.
· SoDA - автоматизация разработки программной документации.
II. а) BPWin + ERWin > All Fusion Suite
б) PVCS - управление конфигурацией
в) DOORS - управление требованиями
г) MS Project (TimeLine)
Всего примерно 300 CASE-продуктов.
Основные области автоматизации:
1. Управление требованиями.
2. Создание проектных моделей (функциональные модели данных, объектные модели).
3. Поддержка вспомогательных процессов: тестирование.
· Создавать тесты, библиотеки тестов.
· Документация: оформление, документирование.
· Управление конфигурацией (отслеживание копий разрабатываемого ПО).
Черты CASE:
1. Мощная графика.
2. Поддержка стандартов проектирования.
3. Использование накапливаемых шаблонов проектирования.
4. Поддержка контроля правильности (правильность элементов, полнота, соответствие).
5. Поддержка многопользовательской работы.
6. Использование репозитария для хранения проектных и служебных данных.
· Хранение шаблонов проектирования.
· Хранение версий проектных решений.
· Поддержка многопользовательской работы.
· Контроль доступа (реализация различных форматов согласования).
Достоинства CASE-средств:
· Повышение производительности
· Повышение качества
· Повышение стандартизации
· Облегчение обмена
· Облегчается сопровождение
Недостатки CASE-средств:
· Разнородность продуктов, быстрая смена версий. Трудно сравнить продукты
· Дороговизна самого продукта, настройки, обучения
· Длительный срок окупаемости
· Проблема несовместимости с технологиями проектирования, с технической базой, с масштабом проекта, с содержанием (например, нет аналитики в проекте)
· Проблема с моральной неготовностью персонала
Условия применения CASE-средств:
1. Готовность организации для использования.
2. Установившийся процесс проектирования.
3. Однородный поток проекта.
ВНЕДРЕНИЕ CASE-СРЕДСТВА
1. Подготовка
· Определение потребности: область деятельности, масштаб, число пользователей.
· Определение возможностей.
· Обзор рынка.
· Определение критериев использования (внедрения).
· Стратегия использования.
2. Выбор средства
· Сбор информации (как можно больше узнать о возможностях конкурентов и претендентах на покупку). Источники: ознакомление с рекламой, изучение документации, ознакомление с демо-версией, решение контрольных примеров, общение с пользователями и экспертами, знакомство с примерами применения.
· Определение критерия выбора. Отбор критериев > выбор по критерию.
3. Выполнение проекта
· Выбор проекта: важность, сроки, типичности, объемы и финансы - выбор «золотой середины» у всех критериев, по которым выбираем.
· Реализация проекта.
· Оценка результата:
+: принимаем средство
±: сделать еще один подобный проект
-: 1) средство плохо подходит для выбранного типа проекта. Надо попробовать другой
2) отказ от этого CASE-средства
3) отказ от всех CASE-средств
4. Внедрение
· Планирование внедрения.
· Уточнение или назначение критериев внедрения.
· Реализация внедрения: обучение, выполнение работ вместе с персоналом.
· Оценка результатов:
+: принимаем -: корректировка планов
РАСПРОСТРАНЕННЫЕ CASE-СРЕДСТВА
I. а) Silverrun
Поддерживается структура функционального проектирования, любые модели жизненного цикла. Основные модули: разработка функциональных моделей, концептуальное проектирование данных, проектирование реляционных баз, построение прототипа приложения.
б)Oracle Designer
Разработка функциональных моделей, разработка концептуальных моделей, разработка иерархии функциональных блоков (похоже на схему диалога), разработка прототипа генерации типовых элементов, разработка реляционных баз, возможность использования диаграмм UML. (Oracle Developer: Oracle Designer + разработка кода).
в) Rational Rose Suite
· Rational Rose - диаграммы, код по диаграмме классов (UML).
· Requisite Pro - управление требованиями.
· Модули тестирования.
· Clear Case - средства для управления конфигурацией.
· SoDA - автоматизация разработки программной документации.
II. а) BPWin + ERWin > All Fusion Suite
б) PVCS - управление конфигурацией
в) DOORS - управление требованиями
г) MS Project (TimeLine)
Всего примерно 300 CASE-продуктов.