- •Министерство образования и науки, молодёжи и спорта украины
- •Содержание
- •Тема.1. Основные понятия и методология проектирования сложных обьектов и систем Лекция 1. Основные понятия и методология
- •1.1. Основные определения
- •1.2. Сущность процесса проектирования
- •1.3. Методология системного подхода к проблеме проектирования сложных систем
- •1.4. Системный подход к задаче автоматизированного проектирования технологического процесса
- •1.5. Системный анализ сложных процессов
- •1.6. Этапы проектирования сложных систем
- •Техническое задание
- •Этап нир
- •Этап окр
- •Этап разработки технического проекта объекта
- •Рабочее проектирование
- •Проектирование технологии изготовления спроектированного объекта
- •1.6. Контрольные вопросы и упражнения
- •Тема.2. Системный ( структурный ) уровень компьютерного проектирования сложных обьектов Лекция 2. Определение визуального моделирования
- •2.1. О пользе чертежей
- •2.2. По и другие инженерные объекты
- •2.3. Чертить по.
- •2.4. Метафора визуализации
- •2.5. Графовая метафора
- •2.6. Определение визуального моделирования
- •2.7. Средства визуального моделирования
- •2.8. О программных инструментах
- •2.9. Визуальное моделирование на фоне эволюции средств программирования
- •2.10. Семантический разрыв визуальных моделей и программного кода
- •2.11. Где выход?
- •2.12. Предметная область, модель, метамодель, метаметамодель.
- •2.13. Множество моделей по
- •2.14. Граф модели и диаграммы
- •2.15. Об операциях над графом модели и диаграммами
- •2.16. Контрольные вопросы
- •Лекция 3. Что такое The uml
- •3.1. Назначение языка
- •3.2. Историческая справка
- •3.3. Способы использования языка
- •3.4. Структура определения языка
- •3.5. Терминология и нотация
- •3.6. Контрольные вопросы
- •Лекция 4. Виды диаграмм uml
- •4.1. Почему нужно несколько видов диаграмм
- •4.2. Виды диаграмм
- •4.3. Диаграмма прецедентов (use case diagram)
- •4.4. Диаграмма классов (class diagram)
- •4.5. Диаграмма объектов (object diagram)
- •4.6. Диаграмма последовательностей (sequence diagram)
- •4.7. Диаграмма взаимодействия (кооперации, collaboration diagram)
- •4.8. Диаграмма состояний (statechart diagram)
- •4.9. Диаграмма активности (деятельности, activity diagram)
- •4.10. Диаграмма развертывания (deployment diagram)
- •4.11. Ооп и последовательность построения диаграмм
- •4.12. Контрольные вопросы
- •Лекция 5. Диаграмма классов: крупным планом
- •5.1. Как класс изображается на диаграмме uml?
- •5.2. А что внутри?
- •5.3. Как использовать объекты класса?
- •5.4. Всегда ли нужно создавать новые классы?
- •5.5. Отношения между классами
- •5.6. Контрольные вопросы
- •Лекция 6. Диаграмма активностей: крупным планом
- •6.1. А ведь это вовсе не блок-схема!
- •6.2. Примеры использования таких диаграмм
- •6.3. Советы по построению диаграмм активностей
- •6.4. Контрольные вопросы
- •Лекция 7. Диаграммы взаимодействия: крупным планом
- •7.1. Диаграммы последовательностей и их нотация
- •7.2. Диаграммы кооперации и их нотация
- •7.3. Рекомендации по построению диаграмм взаимодействия
- •7.4. Контрольные вопросы
- •Лекция 8: Диаграммы прецедентов: крупным планом
- •8.1. Несколько слов о требованиях
- •8.2. Диаграммы прецедентов и их нотация
- •8.3. Моделирование при помощи диаграмм прецедентов
- •8.4. Контрольные вопросы
- •Лекция 9: Элементы графической нотации диаграммы развертывания. Паттерны проектирования и их представление в нотации uml
- •9.1. Диаграмма развертывания, особенности ее построения
- •9.1.1. Узел
- •9.1.2. Соединения и зависимости на диаграмме развертывания
- •9.1.3. Рекомендации по построению диаграммы развертывания
- •9.2. Паттерны объектно-ориентированного анализа и проектирования, их классификация
- •9.2.1. Паттерны проектирования в нотации языка uml
- •9.2.2. Паттерн Фасад и его обозначение в нотации языка uml
- •9.2.3. Паттерн Наблюдатель и его обозначение в нотации языка uml
- •Лекция 10: Визуальное моделирование систем реального времени
- •10.1. Системы реального времени
- •10.2. Структурное подобие срв и аппаратуры
- •10.3. Многоуровневые открытые сетевые протоколы и блочная декомпозиция
- •10.4. Композитные компоненты
- •10.5. Интерфейс
- •10.6. Порт
- •10.7. Соединитель
- •10.8. Реактивные системы
- •10.9. Обзор примера
- •10.10. Контрольные вопросы
- •Лекция 11. Визуальное моделирование бизнес-процессов
- •11.1. Новая концепция бизнеса - ориентация на бизнес-процессы
- •11.2. Erp-системы
- •11.3. Моделирование бизнес-процессов
- •11.4. Пример бизнес-процесса
- •11.5. Декомпозиция бизнес-процессов
- •11.6. Исполняемая семантика бизнес-процессов
- •11.7. Бизнес-процессы и web-сервисы
- •11.8. Обзор bpmn
- •11.8.1. Действия (activities)
- •11.8.2. Связи (connecting objects)
- •11.8.3. Участники (swimlanes) бизнес-процесса
- •11.8.4. Порты (gateways)
- •11.9. Контрольные вопросы
- •12. Лекция: Этапы проектирования ис с применением uml
- •12.1. Разработка модели бизнес-прецедентов
- •12.2. Разработка модели бизнес-объектов
- •12.3. Разработка концептуальной модели данных
- •12.4. Разработка требований к системе
- •12.5. Анализ требований и предварительное проектирование системы.
- •12.6. Разработка моделей базы данных и приложений
- •12.7. Проектирование физической реализации системы
- •Тема.3. Математические модели обьектов проектирования Лекция 14. Математические модели объектов проектирования
- •14.1. Общие сведения о математических моделях
- •14.1.1. Компоненты математического обеспечения
- •14.1.2. Требования к математическим моделям и численным методам в сапр
- •14.1.3. Место процедур формирования моделей в маршрутах проектирования
- •14.2. Классификация математических моделей
- •14.3. Методика получения математических моделей элементов
- •14.3.1. Преобразование математических моделей в процессе получения рабочих программ анализа
- •14.3.2. Формализация получения математических моделей систем
- •Тема.4. Математическое обеспечение компьютерного проектирования Лекция 15. Математическое обеспечение компьютерного проектирования
- •15.1. Методы и алгоритмы анализа на макроуровне
- •15.2. Алгоритм численного интегрирования соду
- •15.3. Методы решения систем нелинейных алгебраических уравнений
- •15.4. Методы решения систем линейных алгебраических уравнений
- •15.5. Организация вычислительного процесса в универсальных программах анализа на макроуровне
- •15.6. Математическое обеспечение анализа на микроуровне
- •15.7. Методы анализа на микроуровне
- •15.8. Структура программ анализа по мкэ на микроуровне
- •15.9. Математическое обеспечение анализа на функционально–логическом уровне
- •15.10. Математические модели дискретных устройств
- •15.11. Методы логического моделирования
- •15.12. Математическое обеспечение анализа на системном логическом уровне
- •15.13. Аналитические модели смо
- •15.14. Имитационное моделирование смо
- •15.15. Событийный метод моделирования
- •15.16. Сети Петри
- •Тема.5. Интегрированные системы автоматического проектирования
- •16.2. Этапы развития информационных систем и технологий на машиностроительных предприятиях
- •16.3. Современные ит и их значение для предприятия
- •16.4. Жизненный цикл изделия
- •16.5. Обеспечение информационных систем на предприятии
- •16.6. Иерархия автоматизированных систем на предприятии
- •16.7. Общепроизводственные системы
- •Тема.6. Системы и технологии управления проектированием и
- •17.1.2. Программные продукты компании sap
- •17.1.2.1. Базисная технология системы r/3 фирмы sap
- •17.1.2.2. Sap erp
- •17.1.2.2. Sap plm
- •17.2. Информационная безопасность в cals-системах
- •17.2.1. Основные понятия и определения
- •17.2.2. Технологии построения защищенной сети виртуального предприятия
- •Лекция 18. Case – технологии Тема.7. Case-технологии компьютерного проектирования
- •Ibm Rational Rose
- •Visio поддерживает множество локальных языков
- •Тема.8. Case-средства анализа и синтеза проектных решений ис
- •Основы методологии проектирования ис
- •Структурный подход к проектированию ис
- •Состав функциональной модели
- •Иерархия диаграмм
- •Внешние сущности
- •Системы и подсистемы
- •Накопители данных
- •Потоки данных
- •Пример использования структурного подхода
- •Тема.9. Анализ, верификация и оптимизация проектных решений средствами сапр
- •Список литературы
6.3. Советы по построению диаграмм активностей
Процесс построения диаграммы активностей можно описать в виде последовательности таких действий:
Составление перечня деятельностей в системе
Как исходные данные для этой операции хорошо подходит список прецедентов (или список операций - см. два способа использования диаграмм деятельности). Дополняться диаграммой активности может каждый сценарий использования. Можно также попытаться описать связь между ними.
Принятие решения о необходимости построения диаграммы деятельностей
Несмотря на то что вы уже начали работу в этом направлении, вы все же можете решить отказаться от продолжения построения диаграммы деятельностей. Причины тому могут быть различными, например, система одномоментно меняет свои состояния (как светофор) или ее поведение достаточно очевидно. (Помните пример с циклом с постусловием? Наверняка многие читатели подумали: "Зачем моделировать такие простые и очевидные вещи?". Теперь вы знаете зачем - чтобы показать нецелесообразность этого.)
Определение зависимостей между деятельностями
Для каждой активности нужно найти активности, непосредственно предшествующие (и следующие за ней тоже), то есть активности, без выполнения которых поток управления не может перейти к данной деятельности.
Выделение параллельных потоков деятельностей
Выделите активности, имеющие общих предшественников. Зачем - думаем, и так понятно.
Определение условий переходов
Сформулируйте выражения, которые могут принимать только два значения - "истинно" или "ложно", соответствующие альтернативным потокам управления. Теперь вы знаете, что писать рядом с символами принятия решений!
Уточните сложные деятельности
Повторите пункты 1-6 для каждой из деятельностей (при необходимости). Помните пример с посадкой/высадкой пассажиров самолета? Присмотритесь внимательно, возможно, в проектируемой вами диаграмме тоже будет нелишним применить "принцип матрешки". А как это работает на практике? Да легко! Рассмотрим, например, моделирование пословицы "После драки кулаками не машут":
Выделяем деятельности: драться, махать кулаками.
Следует ли строить диаграмму в этом случае? Вообще-то нет. Но ведь это пример!
Определяем зависимости между деятельностями: размахивание кулаками не происходит после драки.
Определяем параллельные деятельности: вроде бы тут таких не наблюдается...
Определяем условия переходов: драка состоялась? Если "нет", то машем кулаками, если "да", то нет.
Уточняем сложные деятельности: при драке машут не только кулаками, но и ногами. А еще можно пинаться головой и использовать подручные средства, мебель, например. Плюс можно выделить еще подготовительные деятельности (выбор места для нападения) и завершающие (вынос раненых).
Посмеялись? А теперь попробуйте все это смоделировать. Правда, легко? Ведь все уже разложено по полочкам - только рисуй! А что относительно процесса построения диаграмм активностей говорят классики? Тот же Буч, например, писал:
Создавая диаграммы деятельности, не забывайте, что они лишь моделируют срез некоторых динамических аспектов поведения системы. С помощью единственной диаграммы деятельности никогда не удастся охватить все динамические аспекты системы. Вместо этого следует использовать разные диаграммы деятельности для моделирования динамики рабочих процессов или отдельных операций.
Что ж, напутствия сделаны, цитата из классика приведена. На этом можно и заканчивать. И все же хотелось бы еще раз напомнить о том, что UML в целом и диаграммы активностей в частности обладают немалыми выразительными средствами, позволяющими не только моделировать сложные бизнес-системы, но и рассказывать сказки, стихи, шутить. Да, вы догадались правильно: мы хотим привести еще пару примеров с сайта шуток на UML (http://www.umljokes.com). Первый пример - это незабвенный шекспировский монолог Гамлета на UML (рис.6.11).
Рис. 6.11. шекспировский монолог Гамлета на UML
Второй пример - это подход к решению разнообразнейших проблем, знакомый многим из нас. Как видим, в мире он широко известен и пользуется популярностью не только в постсоветских странах (рис.6.12).
Рис. 6.12. Подход к решению разнообразнейших проблем
Выводы
Диаграммой деятельности можно дополнить любой элемент модели, имеющий динамическое поведение.
Диаграммы деятельности являются частным случаем диаграммы состояний.
В отличие от блок-схем, диаграммы деятельности могут отображать одновременно выполняемые действия.
На диаграммах активности можно использовать плавательные дорожки, распределяющие деятельности в соответствии с ролями (объектами), их выполняющими.
Траектория объекта позволяет показать объекты, относящиеся к деятельности, и моменты переходов этих объектов из одного состояния в другое.
Сложные деятельности можно дополнительно детализировать, разбив на действия и изобразив "диаграмму в диаграмме".
Диаграммы деятельностей можно использовать для проектирования процессов (например, бизнес-процессов) или операций (вычислений). Во втором случае UML выступает в роли визуального языка программирования.