Similar presentations:
Структура CASE-средства: среда разработки и основные возможности
1.
02Структура CASE-средства
Структура среды разработки и основные возможности
PROJECT MODEL
Требования
Модели
ПАРА / 2 КУРС
База данных
Код
Цель: понять, какие части CASE-среды помогают
разработчику и как они связаны между собой.
Тесты
Документация
Единая информационная модель проекта
CASE / SOFTWARE ENGINEERING
1
2.
01 / БАЗАЧто такое CASE-средства
Не отдельный «редактор», а набор инструментов для поддержки жизненного цикла ПО.
Определение
Главная идея
Практический эффект
CASE — Computer-Aided Software
Engineering: автоматизация анализа,
проектирования, разработки и
сопровождения программных систем.
Информация о системе хранится в
связанных моделях и артефактах, а не
существует в виде набора несвязанных
файлов.
Меньше ручной работы, проще
проверять согласованность проекта и
поддерживать документацию.
ДЛЯ ОБСУЖДЕНИЯ
CASE / SOFTWARE ENGINEERING
Чем CASE отличается от обычной IDE? IDE концентрируется на коде, CASE — на системе целиком.
2
3.
02 / АРХИТЕКТУРАСтруктура CASE-средства
Четыре слоя, которые работают вместе.
ИНТЕРФЕЙС
РЕПОЗИТОРИЙ
ИНСТРУМЕНТЫ
ИНТЕГРАЦИЯ
Редакторы, диаграммы,
формы и навигация.
Модели, требования,
объекты, связи и
метаданные.
Анализ, проектирование,
генерация, тестирование.
IDE, СУБД, Git, CI/CD и
внешние сервисы.
Ключевой компонент
РЕПОЗИТОРИЙ
CASE / SOFTWARE ENGINEERING
Он связывает требования → модели → объекты → документацию и помогает сохранять целостность
проекта.
3
4.
03 / СРЕДАСтруктура среды разработки
Что видит разработчик и что происходит «под капотом».
01
02
03
04
05
Проект
Редактор
Моделирование
Сборка / запуск
Отладка / тесты
Файлы, модули,
зависимости и
конфигурации.
Исходный код,
подсветка, навигация и
рефакторинг.
UML, ER, BPMN и другие
диаграммы.
Компиляция, запуск,
профили и
конфигурации.
Breakpoints,
трассировка, тесткейсы и проверки.
ДЛЯ ОБСУЖДЕНИЯ
CASE / SOFTWARE ENGINEERING
Для студента удобно мыслить так: CASE/IDE отвечает не только на вопрос «как написать код?», но и «что мы строим и почему?»
4
5.
04 / АРТЕФАКТЫКакие данные хранит CASE-среда
Каждый этап разработки оставляет артефакт, связанный с другими.
Требование
Use Case
Диаграмма классов
Что должна делать система
Кто и как использует систему
Какие сущности и связи есть
ER-модель
Код
Тест
Как устроены данные
Реализация проектных решений
Как проверяем ожидаемое поведение
Сила CASE — не в количестве окон, а в связях между артефактами.
CASE / SOFTWARE ENGINEERING
5
6.
05 / ВОЗМОЖНОСТИОсновные возможности CASE-средств
От модели до документации — с автоматизацией рутинных операций.
• Создание и редактирование UML, ER, BPMN и других моделей.
• Проверка согласованности и поиск ошибок в моделях.
• Генерация шаблонов кода и структуры базы данных.
• Reverse engineering: построение модели по существующему коду или БД.
• Генерация документации, отчётов и схем.
• Интеграция с IDE, СУБД и системами контроля версий.
CASE / SOFTWARE ENGINEERING
6
7.
06 / ПРИМЕРCASE на примере интернет-магазина
Один проект — много связанных представлений.
ТРЕБОВАНИЕ
Клиент может оформить заказ
СВЯЗЬ
USE CASE
Оформить заказ
КЛАССЫ
User / Product / Order
ER
users / products / orders
КОД
API + frontend
ТЕСТ
Заказ создаётся корректно
ДЛЯ ОБСУЖДЕНИЯ
CASE / SOFTWARE ENGINEERING
Одно изменение
требования
может повлечь
изменения
в модели, БД, коде
и тестах.
Вопрос студентам: на каком этапе дешевле всего обнаружить противоречие — в требованиях, коде или после релиза?
7
8.
07 / МОДЕЛИРОВАНИЕКакие модели используются
CASE помогает увидеть систему до того, как она превратится в тысячи строк кода.
UML
ER-модель
BPMN / процессы
Use Case — требования и роли.
Class — структура объектов.
Sequence — взаимодействие объектов.
Component — архитектура.
Сущности, атрибуты и связи.
Полезна при проектировании БД и
проверке структуры данных.
Показывает последовательность
действий, участников, условия и потоки
работ.
Модель — это абстракция: она убирает лишние детали и оставляет то, что важно на данном этапе.
CASE / SOFTWARE ENGINEERING
8
9.
08 / АВТОМАТИЗАЦИЯГенерация и reverse engineering
CASE может работать в обе стороны.
MODEL → CODE
CODE → MODEL
Модель
↓
шаблоны / классы / SQL
↓
исходный код
Существующий код / БД
↓
анализ структуры
↓
модель системы
Важно: генерация ускоряет работу, но не заменяет инженерные решения разработчика.
CASE / SOFTWARE ENGINEERING
9
10.
09 / ЖИЗНЕННЫЙ ЦИКЛТиповой процесс разработки с CASE
CASE-средства связывают этапы, а не заменяют сам процесс.
01
Требования
02
Анализ
03
Моделирование
04
Проектирование
05
Код
06
Тестирование
07
Документация
08
Сопровождение
ДЛЯ ОБСУЖДЕНИЯ
CASE / SOFTWARE ENGINEERING
CASE помогает не «перепрыгивать» через этапы, а сохранять связи между решениями и результатами.
10
11.
10 / ИНСТРУМЕНТЫПримеры CASE-инструментов
Названия разные, но логика работы похожа.
Enterprise Architect
Visual Paradigm
ER/Studio
UML, BPMN, требования, архитектура,
моделирование БД и генерация
документации.
UML, BPMN, ER-модели, проектирование
и командная работа.
Моделирование данных, проектирование
БД и управление архитектурой данных.
Для учебных проектов полезно сравнивать не бренды, а функции:
моделирование • репозиторий • генерация • обратное проектирование • документация • интеграция
CASE / SOFTWARE ENGINEERING
11
12.
11 / СИСТЕМАТИЗАЦИЯЧто важно запомнить
Четыре опорные идеи после пары.
01
CASE
автоматизация разработки ПО
02
СТРУКТУРА
интерфейс + репозиторий + инструменты + интеграция
03
ВОЗМОЖНОСТИ
модели + генерация + анализ + тесты + документация
04
СМЫСЛ
связать этапы разработки в единую систему
Контрольный вопрос: что станет «центром» CASE-среды, если проект перестанет иметь единое хранилище моделей?
CASE / SOFTWARE ENGINEERING
12
13.
Вопросы?Обсудим на примере вашего учебного проекта.
CASE / 2 КУРС
CASE / SOFTWARE ENGINEERING
13
software