- •220400 «Программное обеспечение вычислительных комплексов и автоматизированных систем»
- •Глава 1. Понятие и сущность моделирования. Место компьютерного моделирования в задачах изучения процессов и явлений
- •§ 1. Понятие модели. Функции моделей и их классификация
- •1.1. Понятие и функции моделей
- •1.2. Классификация моделей
- •§ 2. Структура моделей
- •2.1. Структура модели и ее основные составляющие
- •2.2. Анализ и синтез
- •§ 3. Виды моделирования. Понятие и сущность компьютерного моделирования
- •3.1. Виды моделирования
- •2.3. Требования к модели
- •3.2. Понятие и сущность компьютерного моделирования
- •3.3. Искусство моделирования. Действия, выполняемые в процессе моделирования
- •§ 4. Моделирование как искусство. Этапы процесса моделирования
- •4.1. Этапы процесса моделирования
- •4.2. Постановка задачи и определение типа модели
- •4.3. Формулирование модели
- •4.4. Проверка модели
- •4.5. Стратегическое и тактическое планирование
- •4.6. Экспериментирование и анализ чувствительности
- •4.7. Реализация замысла и документирование
- •Глава 2. Объектно-ориентированная технология как современная парадигма компьютерного моделирования. Основные сведения о языке uml
- •§ 5. Объектно-ориентированная технология как современная парадигма компьютерного моделирования
- •5.1. Обстоятельства и причины появления объектно-ориентированной технологии. Основные термины
- •В общем случае объекты обладают двумя качествами:
- •5.2. Принципы объектно-ориентированной технологии
- •§ 6. Назначение и цели унифицированного языка моделирования. Основные концепции uml
- •6.1. Назначение и цели uml
- •6.2. Основные концепции uml
- •§ 7. Статическое представление модели
- •7.1. Классификаторы
- •Типы классификаторов
- •7.2. Отношения
- •7.3. Ограничения
- •§ 8. Структурные представления модели
- •8.1. Представление вариантов использования
- •Виды отношений вариантов использования
- •8.2. Представления программной реализации и развертывания
- •§ 9. Представление в виде конечного автомата как один из видов динамического представления модели
- •9.1. Понятие конечного автомата. Определение события и состояния
- •9.2. Понятие и структура перехода. Типы переходов
- •§ 10. Представления деятельности и взаимодействия как виды динамического представления модели
- •10.1. Представление деятельности
- •10.2. Представление взаимодействия
- •§ 11. Представление управления моделью и дополнительные возможности языка uml
- •11.1. Представление управления моделью
- •11.2. Расширение возможностей языка uml
- •Глава 3. Понятие и виды имитационного моделирования. Инструментарий имитационного моделирования: назначение и краткий обзор
- •§ 12. Понятие и виды имитационного моделирования. Роль языков имитационного моделирования в решении задач компьютерного моделирования
- •12.1. Понятие и виды имитационного моделирования
- •12.2. Роль языков имитационного моделирования в решении задач компьютерного моделирования
- •§ 13. Классификация и краткая характеристика языков имитационного моделирования. Среда и функциональная структура языка моделирования gpss
- •13.1. Классификация языков имитационного моделирования
- •13.2. Принципы организации системы gpss
- •Глава 4. Общие понятия о графическом моделировании и геоинформационных системах
- •§ 14. Способы представления и принципы обработки графических данных на персональных эвм
- •14.1. Представление в компьютере графической информации. Растровая и векторная графика
- •14.2. Модели представления цвета в графических изображениях
- •14.3. Форматы графических файлов
- •14.4. Принципы обработки графических данных на персональных компьютерах
- •§ 15. Геоинформационные системы и особенности моделирования земной поверхности
- •15.1. Основные понятия и организация гис
- •15.2. Проблемы качества векторных цифровых карт для гис
- •§ 16. Классификация программного обеспечения гис и реализация гис-проектов
- •16.1. Классификация и краткая характеристика программного обеспечения гис
- •16.2. Порядок создания гис-проектов
- •Компьютерные модели в информационных технологиях на железнодорожном транспорте
- •127994, Москва, ул.Образцова, 15
§ 10. Представления деятельности и взаимодействия как виды динамического представления модели
10.1. Представление деятельности
Представление деятельности — это особая форма конечных автоматов, которая отображает процесс вычисления и потоки работ. Графически представление деятельности изображается в виде диаграммы деятельности, моделирующей состояния производимых вычислений, в отличие от состояний объекта (рис. 22). Объект находится в состоянии деятельности до завершения процесса вычислений. По завершении одной деятельности он переходит к следующей (и к следующему состоянию). Переход по завершению в диаграмме деятельности запускается тогда, когда закончилась вся предыдущая деятельность. Обычно у состояния деятельности нет переходов по наступлению событий, однако его могут прервать переходы из внешних состояний.
Представление деятельности изображается в виде совокупности состояний деятельности и может содержать состояния действия (action states). Состояния действия, в отличие от состояний деятельности, мгновенны и не допускают переходов во время своего выполнения. Состояния действия обычно используются в кратковременных операциях, например при учете системных ресурсов. Представление деятельности может иметь разветвления (branches), а также развилки (forking) управления между параллельными нитями. Параллельные нити представляют собой деятельности, которые объекты или люди могут совершать одновременно.
В целом представление деятельности напоминает обычную блок-схему, с одним существенным отличием — в ней допускается не только последовательное, но и параллельное управление потоком работ.
Рис. 22. Диаграмма деятельности
Состояния деятельности изображаются в виде прямоугольников с закругленными боковыми сторонами (вид деятельности указывается внутри этого прямоугольника). Нотация деятельности отличается от нотации состояния тем, что в ней у прямоугольников закруглены не углы, а целые стороны. Простые переходы по завершению изображаются в виде стрелок. Разветвления изображаются как переходы со сторожевыми условиями или в виде ромбов, из которых выходит несколько помеченных стрелок. Развилка или слияние управления выглядят в виде стрелок, которые входят или выходят из жирной черты — линейки синхронизации. На рис. 22 представлена диаграмма деятельности для обработки заказа в театральной кассе.
В ситуациях, когда на диаграмме нужно указать внешние события, используется изображение запуска перехода. Если на диаграмме требуется изобразить много переходов по событиям, то следует использовать диаграмму состояний.
Иногда на диаграмме деятельности нужно соотносить деятельности и те объекты, которые несут за них ответственность, — например, сгруппировать вместе все деятельности одной организации. Разделение ответственности можно изобразить, поделив всю диаграмму на части вертикальными линиями, в результате чего диаграмма напоминает плавательные дорожки.
Помимо потока управления на диаграммах деятельности можно изображать поток объектов-значений. В потоке объектов-значений участвует объект, являющийся входным параметром для одной деятельности и выходным — для другой. Объект - результирующее значение изображается в виде пунктирной стрелки, идущей от деятельности к состоянию объекта, а входное значение — в виде пунктирной стрелки, идущей в обратном направлении, то есть от состояния объекта к деятельности.
Если результатом выполнения деятельности является несколько объектов-значений или если за ней следует несколько потоков управления, то стрелки начинаются от знака развилки (fork). Точно так же, в случае наличия нескольких входных значений, стрелки заканчиваются на знаке слияния (join).
На рис. 23 показана диаграмма деятельности, в которой «плавательным дорожкам» приписаны как деятельности, так и потоки объектов.
Рис. 23. «Плавательные дорожки» и потоки объектов
На диаграммах деятельности невозможно изобразить все подробности процесса вычислений. Как правило, эти диаграммы показывают потоки деятельности, но не объекты, которые в них участвуют. Такие диаграммы являются отправной точкой проектирования. Далее каждая деятельность должна быть развернута в одну или несколько операций, каждую из которых реализует конкретный класс. Это развертывание выражается в диаграммах кооперации.
