Нижегородский государственный университет им. Н.И. Лобачевского Факультет вычислительной математики и кибернетики Учебно-исследовательская лаборатория "Информационные технологии" Обзор и анализ технологий и CASE-средств кафедра МО ЭВМ ВМК ННГУ Содержание 1. Введение 2. Сущность структурного подхода 3. Общая характеристика 4. Классификация 5. Обзор CASE-средств 15.05.2003 Обзор и анализ технологий и CASE-средств 2-<42> 1. Введение Характеристика современных крупных проектов: сложность описания (достаточно большое количество функций, процессов, элементов данных и сложные взаимосвязи между ними) наличие совокупности тесно взаимодействующих компонентов (подсистем) отсутствие прямых аналогов, ограничивающее возможность использования каких-либо типовых проектных решений и прикладных систем необходимость интеграции существующих и вновь разрабатываемых приложений функционирование в неоднородной среде на нескольких аппаратных платформах разобщенность и разнородность отдельных групп разработчиков по уровню квалификации и сложившимся традициям использования тех или иных инструментальных средств существенная временная протяженность проекта 15.05.2003 Обзор и анализ технологий и CASE-средств 3-<42> 1. Введение ... Предыстория : • До 70-х гг: проектирование выполнялось в основном на интуитивном уровне с применением неформализованных методов • 70-80 гг: широко применялась структурная методология, предоставляющая в распоряжение разработчиков строгие формализованные методы описания ИС и принимаемых технических решений Проблемы : • неадекватная спецификация требований • неспособность обнаруживать ошибки в проектных решениях • низкое качество документации • затяжной цикл и неудовлетворительные результаты тестирования 15.05.2003 Обзор и анализ технологий и CASE-средств 4-<42> 1. Введение ... Термин CASE (Computer Aided Software Engineering) : • Первоначально: предназначен для автоматизации разработки только лишь программного обеспечения (ПО) • В настоящее время: приобрел новый смысл, охватывающий процесс разработки сложных ИС в целом Особенности применения : CASE-средства не обязательно дают немедленный эффект; он может быть получен только спустя какое-то время реальные затраты на внедрение CASE-средств обычно намного превышают затраты на их приобретение CASE-средства обеспечивают возможности для получения существенной выгоды только после успешного завершения процесса их внедрения 15.05.2003 Обзор и анализ технологий и CASE-средств 5-<42> 1. Введение ... Подводные камни при использовании: оценка отдачи от инвестиций в CASE-средства затруднительна (отсутствие приемлемых метрик по процессам разработки ПО) внедрение может представлять собой достаточно длительный процесс и может не принести немедленной отдачи отсутствие полного соответствия между теми процессами и методами, которые поддерживаются CASE-средствами, и теми, которые используются в данной организации CASE-средства зачастую трудно использовать в комплексе с другими подобными средствами некоторые CASE-средства требуют слишком много усилий для того, чтобы оправдать их использование в небольшом проекте негативное отношение персонала к внедрению новой CASEтехнологии может быть главной причиной провала проекта 15.05.2003 Обзор и анализ технологий и CASE-средств 6-<42> 2. Сущность структурного подхода Система разбивается на функциональные подсистемы, которые в свою очередь делятся на подфункции, подразделяемые на задачи Два базовых принципа : принцип "разделяй и властвуй" - принцип решения сложных проблем путем их разбиения на множество меньших независимых задач, легких для понимания и решения принцип иерархического упорядочивания - принцип организации составных частей проблемы в иерархические древовидные структуры с добавлением новых деталей на каждом уровне 15.05.2003 Обзор и анализ технологий и CASE-средств 7-<42> 2. Сущность структурного подхода ... Остальные принципы : принцип абстрагирования - заключается в выделении существенных аспектов системы и отвлечения от несущественных принцип формализации - заключается в необходимости строгого методического подхода к решению проблемы принцип непротиворечивости - заключается в обоснованности и согласованности элементов принцип структурирования данных - заключается в том, что данные должны быть структурированы и иерархически организованы 15.05.2003 Обзор и анализ технологий и CASE-средств 8-<42> 2. Сущность структурного подхода ... Виды моделей (диаграмм) : SADT (Structured Analysis and Design Technique) модели и соответствующие функциональные диаграммы DFD (Data Flow Diagrams) диаграммы потоков данных ERD (Entity-Relationship Diagrams) диаграммы "сущностьсвязь" 15.05.2003 Обзор и анализ технологий и CASE-средств 9-<42> 2. Сущность структурного подхода ... Модель SADT Основывается на следующих концепциях : • графическое представление блочного моделирования • строгость и точность Правила SADT включают : • ограничение количества блоков на каждом уровне декомпозиции (правило 3-6 блоков) • связность диаграмм (номера блоков) • уникальность меток и наименований (отсутствие повторяющихся имен) • синтаксические правила для графики (блоков и дуг) • разделение входов и управлений (правило определения роли данных) • отделение организации от функции, т.е. исключение влияния организационной структуры на функциональную модель. 15.05.2003 Обзор и анализ технологий и CASE-средств 10-<42> 2. Сущность структурного подхода ... Модель SADT Управление Входы Функция Выходы Механизм Рис. Функциональный блок и интерфейсные дуги 15.05.2003 Обзор и анализ технологий и CASE-средств 11-<42> 2. Сущность структурного подхода ... Модель SADT Более общее представление Более детальное представление 1 2 3 4 Одной из наиболее важных особенностей методологии SADT является постепенное введение все больших уровней детализации по мере создания диаграмм, отображающих модель 15.05.2003 Обзор и анализ технологий и CASE-средств 12-<42> 2. Сущность структурного подхода ... Модель DFD В основе данной методологии лежит построение модели анализируемой ИС Основные компоненты диаграмм : • внешние сущности • системы/подсистемы • процессы • накопители данных • потоки данных 15.05.2003 Обзор и анализ технологий и CASE-средств 13-<42> 2. Сущность структурного подхода ... Модель DFD. Внешняя сущность представляет собой материальный предмет или физическое лицо, представляющее собой источник или приемник информации, например, заказчики, персонал, поставщики, клиенты, склад Заказчик 15.05.2003 Обзор и анализ технологий и CASE-средств 14-<42> 2. Сущность структурного подхода ... Модель DFD. Процесс представляет собой преобразование входных потоков данных в выходные в соответствии с определенным алгоритмом Поле номера 1.1 Рассчитать остаток средств Поле имени Поле физической реализации 15.05.2003 Обзор и анализ технологий и CASE-средств 15-<42> 2. Сущность структурного подхода ... Модель DFD. Накопитель данных представляет собой абстрактное устройство для хранения информации, которую можно в любой момент поместить в накопитель и через некоторое время извлечь D1 Получаемые счета Накопитель данных идентифицируется буквой "D" и произвольным числом 15.05.2003 Обзор и анализ технологий и CASE-средств 16-<42> 2. Сущность структурного подхода ... Модель DFD. Поток данных 1.5 Вывести отчет о продажах Отчет о продажах Руководство Бухгалтерия 15.05.2003 Обзор и анализ технологий и CASE-средств 17-<42> 2. Сущность структурного подхода ... Модель ERD Наиболее распространенным средством моделирования данных являются диаграммы "сущность-связь". С их помощью определяются важные для предметной области объекты (сущности), их свойства (атрибуты) и отношения друг с другом (связи). < ИМЯ СУЩНОСТИ> Графическое изображение сущности 15.05.2003 Обзор и анализ технологий и CASE-средств 18-<42> 2. Сущность структурного подхода ... Модель ERD. Связь Много Один Необязательная Обязательная Графическое изображение связей 15.05.2003 Обзор и анализ технологий и CASE-средств 19-<42> 2. Сущность структурного подхода ... Модель ERD. Атрибут Атрибут - любая характеристика сущности, значимая для рассматриваемой предметной области и предназначенная для квалификации, идентификации, классификации, количественной характеристики или выражения состояния сущности <ИМЯ СУЩНОСТИ> * <атрибут-1> * - обязательный атрибут o - необязательный атрибут Графическое изображение атрибута 15.05.2003 Обзор и анализ технологий и CASE-средств 20-<42> 2. Сущность структурного подхода ... Модель ERD. Уникальный идентификатор Уникальный идентификатор - это атрибут или совокупность атрибутов и/или связей, предназначенная для уникальной идентификации каждого экземпляра данного типа сущности <ИМЯ СУЩНОСТИ> # <атрибут> <ИМЯ СУЩНОСТИ> # <атрибут> Полная идентификация Идентификация посредством другой сущности Графическое изображение идентификатора 15.05.2003 Обзор и анализ технологий и CASE-средств 21-<42> 3. Общая характеристика Требования к CASE-средствам: • Мощные графические средства для описания и документирования, обеспечивающие удобный интерфейс с разработчиком и развивающие его творческие возможности • Интеграция отдельных компонент CASE-средств, обеспечивающая управляемость процессом разработки • Использование специальным образом организованного хранилища проектных метаданных (репозитория) 15.05.2003 Обзор и анализ технологий и CASE-средств 22-<42> 3. Общая характеристика … Состав интегрированных CASE-средств: • Репозиторий • Графические средства анализа и проектирования • Средства разработки приложений • Средства конфигурационного управления • Средства документирования • Средства тестирования • Средства управления проектом • Средства реинжиниринга 15.05.2003 Обзор и анализ технологий и CASE-средств 23-<42> 4. Классификация Виды классификации По типам По категориям отражает функциональную ориентацию CASE-средств на те или иные процессы ЖЦ определяет степень интегрированности по выполняемым функциям отдельные локальные средства 15.05.2003 набор частично интегрированных средств Обзор и анализ технологий и CASE-средств полностью интегрированные средства 24-<42> 4. Классификация … По типам • средства анализа (Upper CASE) • средства анализа и проектирования (Middle CASE) • средства проектирования баз данных • средства разработки приложений • средства реинжиниринга • средства планирования и управления проектом • средства конфигурационного управления • средства тестирования • средства документирования 15.05.2003 Обзор и анализ технологий и CASE-средств 25-<42> 4. Обзор CASE-средств Рынок CASE-средств : • BPwin • Rational Rose • Together Control Center • Designer/2000 • Silverrun • … и свыше 500 других 15.05.2003 Обзор и анализ технологий и CASE-средств 26-<42> 4. Обзор CASE-средств Rational Rose Назначение : • автоматизация этапов анализа и проектирования ПО • генерация кодов на различных языках • выпуск проектной документации Разработанная универсальная нотация для моделирования объектов (UML - Unified Modeling Language) претендует на роль стандарта в области объектно-ориентированного анализа и проектирования 15.05.2003 Обзор и анализ технологий и CASE-средств 27-<42> 4. Обзор CASE-средств Rational Rose Состав : • репозиторий • графический интерфейс пользователя • средства просмотра проекта (browser) • средства контроля проекта • средства сбора статистики • генератор документов • генератор кодов (индивидуальный для каждого языка) • анализатор кодов для С++, обеспечивающий реинжиниринг восстановление модели проекта по исходным текстам программ. 15.05.2003 Обзор и анализ технологий и CASE-средств 28-<42> 4. Обзор CASE-средств Состав : Rational Rose представляет собой объектноориентированную базу данных • репозиторий • графический интерфейс пользователя • средства просмотра проекта (browser) • средства контроля проекта • средства сбора статистики • генератор документов • генератор кодов (индивидуальный для каждого языка) • анализатор кодов для С++, обеспечивающий реинжиниринг восстановление модели проекта по исходным текстам программ. 15.05.2003 Обзор и анализ технологий и CASE-средств 29-<42> 4. Обзор CASE-средств Rational Rose обеспечивают "навигацию" по проекту, в том числе, перемещение по иерархиям • репозиторий классов и подсистем, переключение от одного вида диаграмм к другому и т. д. • графический интерфейс пользователя Состав : • средства просмотра проекта (browser) • средства контроля проекта • средства сбора статистики • генератор документов • генератор кодов (индивидуальный для каждого языка) • анализатор кодов для С++, обеспечивающий реинжиниринг восстановление модели проекта по исходным текстам программ. 15.05.2003 Обзор и анализ технологий и CASE-средств 30-<42> 4. Обзор CASE-средств Rational Rose Состав : дают возможность находить и устранять ошибки по мере • графический интерфейс пользователя развития проекта, а не после завершения его описания • средства просмотра проекта (browser) • репозиторий • средства контроля проекта • средства сбора статистики • генератор документов • генератор кодов (индивидуальный для каждого языка) • анализатор кодов для С++, обеспечивающий реинжиниринг восстановление модели проекта по исходным текстам программ. 15.05.2003 Обзор и анализ технологий и CASE-средств 31-<42> 4. Обзор CASE-средств Rational Rose Состав : • репозиторий • графический интерфейс пользователя формирует • средства просмотра проекта (browser) тексты выходных документов на основе содержащейся • средства контроля проекта в репозитории информации • средства сбора статистики • генератор отчетов • генератор кодов (индивидуальный для каждого языка) • анализатор кодов для С++, обеспечивающий реинжиниринг восстановление модели проекта по исходным текстам программ. 15.05.2003 Обзор и анализ технологий и CASE-средств 32-<42> 4. Обзор CASE-средств Rational Rose Состав : • репозиторий используя информацию, содержащуюся в логической и физической моделях проекта, • графический интерфейс пользователя формирует файлы заголовков и файлы описаний • средства просмотра проекта (browser) классов и объектов. Создаваемый таким образом • средства контроля проекта скелет программы может быть уточнен путем прямого программирования на языке С++. • средства сбора статистики • генератор отчетов • генератор кодов (индивидуальный для каждого языка) • анализатор кодов для С++, обеспечивающий реинжиниринг восстановление модели проекта по исходным текстам программ. 15.05.2003 Обзор и анализ технологий и CASE-средств 33-<42> 4. Обзор CASE-средств Rational Rose Состав : • репозиторий • графический интерфейс пользователя • средства просмотра проекта (browser) создает модули проектов в форме • средства контроля проекта Rational Rose на основе информации, содержащейся в определяемых • средства сбора статистики пользователем исходных текстах на С++ • генератор отчетов • генератор кодов (индивидуальный для каждого языка) • анализатор кодов для С++, обеспечивающий реинжиниринг восстановление модели проекта по исходным текстам программ. 15.05.2003 Обзор и анализ технологий и CASE-средств 34-<42> 4. Обзор CASE-средств Rational Rose В результате разработки проекта формируются следующие документы : • диаграммы классов • диаграммы состояний • диаграммы сценариев • диаграммы модулей • диаграммы процессов • спецификации классов, объектов, атрибутов и операций • заготовки текстов программ • модель разрабатываемой программной системы 15.05.2003 Обзор и анализ технологий и CASE-средств 35-<42> 4. Обзор CASE-средств Rational Rose Организация групповой работы : возможно разбиение модели на управляемые подмодели Возможные операции с подмоделями : • загрузка подмодели в память • выгрузка подмодели из памяти • сохранение подмодели на диске в виде отдельного файла • установка защиты от модификации • замена подмодели в памяти на новую 15.05.2003 Обзор и анализ технологий и CASE-средств 36-<42> 4. Обзор CASE-средств Rational Rose Среда функционирования • Платформа Windows - процессор 80386SX или выше (рекомендуется 80486), память8Mб (рекомендуется 12Mб), пространство на диске 8Mб + 1-3Mб для одной модели • Платформа UNIX - память 32+(16*число пользователей)Mб, пространство на диске 30Mб + 20 при инсталляции + 1-3Mб для одной модели. 15.05.2003 Обзор и анализ технологий и CASE-средств 37-<42> 4. Обзор CASE-средств BPwin Основные характеристики BPwin : Развитая методология функционального моделирования на основе IDEF0 Мощные редакторы для описания операций, связей и вычисления затрат на выполнение работ Иерархическая структура диаграмм, облегчающая последовательное уточнение элементов модели Контекстные диаграммы для описания границ системы, области действия, назначения объектов Декомпозиционные диаграммы для описания особенностей взаимодействия различных процессов Расширенные возможности по поддержанию ссылочной целостности Поддержка методологии IDEF3 15.05.2003 Обзор и анализ технологий и CASE-средств 38-<42> 4. Обзор CASE-средств BPwin Основные характеристики BPwin : Экспорт моделей в средства имитационного моделирования Интеграция и связь со средством проектирования баз данных ERwin (методология IDEF1X) Поддержка свойств, определяемых пользователем, включая мультимедийные документы Интеграция с ModelMart. Кроме того, поддерживаются прямые связи ModelMart с ERwin и BPwin. Расширенная архитектура. BPwin поддерживает 16- и 32-х разрядные системы, позволяя организовать совместную работу для всех участников проекта. Автоматическая поддержка изменения размеров. BPwin поддерживает автоматическую настройку размеров диаграмм и возможность изменения масштабов изображения моделей. 15.05.2003 Обзор и анализ технологий и CASE-средств 39-<42> 4. Обзор CASE-средств BPwin Внешний вид : 15.05.2003 Обзор и анализ технологий и CASE-средств 40-<42> 4. Обзор CASE-средств Сравнение возможностей : 15.05.2003 Обзор и анализ технологий и CASE-средств 41-<42> Авторы мини-проекта: Куратор: Свистунов А.Н. Гаврилов А.Е. (главный разработчик, технический писатель) Пекерская И.А. (лидер проекта, главный тестер) Тезин Ю.А. (технический писатель) 15.05.2003 Обзор и анализ технологий и CASE-средств 42-<42>