Практический анализ ПО с моделированием на UML – это всесторонний практический курс, нацеленный на развитие навыков анализа требований и визуального моделирования с использованием UML.
Курс включает несколько модулей, раскрывающих следующие темы:
Курс ориентирован на начинающих и работающих аналитиков, а также специалистов по разработке ПО, стремящихся расширить свои навыки в области анализа и моделирования.
Автор и ведущий курса - Николай Киреев, практик с тридцатилетним опытом разработки ПО, старший преподаватель Института информационных технологий Белорусского государственного университета информатики и радиоэлектроники.
Курс ориентирован, прежде всего, на практическую работу. Занятия курса проводятся в формате вебинаров с использованием сервиса Zoom.
Курс проводится для сравнительно небольших групп, поэтому у каждого участника есть возможность задавать вопросы и получать обратную связь от ведущего на каждом занятии.
I. ОБЩИЕ ПРИНЦИПЫ В СИСТЕМНОМ АНАЛИЗЕ
Основные методологии и модели процессов разработки: каскадная, итерационная, спиральная, гибкие (Scrum, Kanban).
Чем отличаются бизнес- и системный анализ. Какие аналитики участвуют в разработке ПО. Роли системного аналитика. Профессиональные стандарты РФ.
Программная система как часть общей бизнес-системы. Признаки сложной программной системы. Виды архитектур информационных систем: локальная, файл-серверная, клиент-серверная, трёхслойная, микросервисная.
Парадигма ООП: абстрагирование, инкапсуляция, полиморфизм, модульность, классы и объекты, наследование, агрегация, композиция, ассоциация, зависимость.
II. UML КАК СРЕДСТВО МОДЕЛИРОВАНИЯ
Язык моделирования UML. Достоинства и недостатки. Отличия от нотаций для бизнес-моделирования. Диаграммы UML.
Инструменты графического моделирования. Достоинства и недостатки CASE-инструментов.
Принцип MDA (model driving architecture) – разработка архитектуры программной системы, управляемая трансформируемыми моделями.
CASE-инструмент WhiteStarUML. Обоснование выбора, достоинства и недостатки, версии, документация, установка на рабочем месте. Понятия: проект, подход, фреймворк, представление (view). Структура проекта в разных подходах. Сохранение проекта.
III. БИЗНЕС-МОДЕЛИРОВАНИЕ В РАЗРАБОТКЕ ПО
Бизнес-моделирование. Цели и задачи. Загрузка бизнес-стереотипов. Представления и модули бизнес-модели. Диаграмма пакетов (package diagram).
Начало разработки ПО. Цели отрасли, цели бизнеса (предприятия), цели программной системы. Понятие SMART-целей. Выявление и документирование целей, как начало разработки ПО.
Бизнес-сущность как описание однотипных объектов. Атрибуты и основные отношения (агрегация, композиция, ассоциация).
Диаграмма бизнес-сущностей (business entity diagram).
Глоссарий предметной области – текстовой артефакт бизнес-анализа. Шаблон глоссария.
Бизнес-субъекты, их типы и обязанности (business use case diagram). Цели, предназначение диаграммы, основная нотация. Примеры.
Бизнес-процессы (БП). Моделирование БП в UML (activity diagram). Предназначение, стандарт UML.
Потоки управления и потоки данных. Ветвление и слияние потоков управления (decision & merge node, fork & join node). Особенности нотации в WSUML. Примеры диаграмм.
Модели БП в BPMN. Основные отличия от activity diagram. Примеры.
Моделирование состояний и переходов между ними (state machine diagram). Назначение и цели. Примеры.
Моделирование пространственного размещения системы (deployment diagram). Назначение и цели. Примеры.
Моделирование объектов предметной области (object diagram, sequence diagram).
Практикум бизнес-моделирования.
IV. АНАЛИЗ ТРЕБОВАНИЙ
Требования функциональные и нефункциональные. Классификации, распределение по уровням абстрактности К. Вигерса, модифицированные уровни абстрактности. Функциональные требования бизнес-логики и UX (user experience). Методики выявления требований. Спецификация требований (SRS).
Трассировка «пожелание – функциональные требования – архитектура». Шаблоны трассировки. Выявление функциональных требований с помощью каркасного моделирования графического интерфейса (wireframes). Модели графического интерфейса (wireframe, mockup, prototype). 10 неписанных правил юзабилити Якоба Нильсена. Популярные продукты для прототипирования GUI: Axure RP и Figma. Сравнение возможностей.
Субъекты предметной области (business actors) и их роли в качестве пользователей системы (actors). Выявление пользователей системы (actor). Типы пользователей.
Структура модели представления use case view. Стандарт uml для use case diagram. Прецеденты базовые, включение include, расширение extend, обобщение generalization. Построение концептуальной (общей) и детальных use case диаграмм для пользователей физлиц. Диаграммы для групп пользователей. Примеры диаграмм.
Анализ требований (полнота, достаточность, необходимость, приоритет, ранжирование) в соответствии с моделью Н. Кано.
Сценарии взаимодействия пользователей и системы: полные и краткие (user story). Описание потоков управления (основной поток, альтернативный поток, ошибочный поток).
V. МОДЕЛИРОВАНИЕ СТРУКТУРЫ БД (ER-модели)
Элементы ER-модели. Основные нотации. Сущности: сильные, слабые. Атрибуты, ключевые атрибуты. Связи между сущностями, бинарные связи и их виды. N-арные связи. Атрибуты связей.
Отчёт по бизнес-моделированию и анализу требований. Содержание, структура, шаблон отчёта.
Практикум моделирования.
VI. МОДЕЛИ ОБЪЕКТОВ И КЛАССОВ ПРИЛОЖЕНИЯ
Диаграммы последовательности (sequence diagram). Назначение, двухэтапный подход, стандарт UML. Стереотипы системного анализа (boundary, control, entity). Сообщения (message) и операции классов (тривиальные, составные). Особенности построения в WSUML. Примеры диаграмм. Примеры моделирования последовательностей «запрос – ответ» с помощью диаграмм последовательности (sequence diagram).
Диаграммы коммуникации (communication diagram). Назначение, стандарт UML. Связи между объектами (object link) и структура ассоциаций классов приложения. Особенности построения в WSUML. Примеры диаграмм.
Диаграмма классов анализа (class diagram). Назначение, построение. Стереотипы классов. Описание классов (атрибуты, операции). Отношения классов: ассоциации, агрегации, композиции, обобщение, зависимость.
Диаграмма внутренней структуры (composite structure diagram), диаграмма компонентов (component diagram), обзорная диаграмма взаимодействия (overview interaction diagram), диаграмма синхронизации (timing diagram). Применение, примеры и стандарты UML.
Отчёт системного аналитика. Содержание, основные разделы, диаграммы, спецификации элементов.
Использование продукта YOUGILE для организации командной работы над проектом.
Практикум системного моделирования.
VII. ЗАКЛЮЧЕНИЕ
Обсуждение результатов выполнения проекта.
Оставшиеся вопросы по курсу.
Задайте свой вопрос в чате Телеграм | |
Или напишите мне, отвечу всем! greesha@webursitet.ru |