- •Б. Б. Желваков
- •Моделирование систем
- •Учебное пособие
- •Санкт-Петербург
- •Составитель
- •Подготовлено на кафедре
- •230201 – Информационные системы и технологии
- •1. Основные понятия теории моделирования систем 6
- •2. Классификация моделей и методов моделирования 21
- •3. Математические методы моделирования 35
- •4. Имитационное моделирование. 62
- •5. Моделирование организационных систем 116
- •6. Методика и стандарты функционального моделирования 140
- •7. Объектно-ориентированное моделирование 166
- •8. Моделирование бизнес-процессов 221
- •9. Моделирование систем с soa-архитектурой 226
- •10. Модели систем с «облачной» архитектурой 237
- •Введение
- •1. Основные понятия теории моделирования систем
- •1.1. Системный подход и понятие «система»
- •1.2. Системный анализ
- •1.3. Понятия «модель» и «моделирование»
- •1.4. Моделирование систем как процесс формирования знаний.
- •1.5. Моделирование больших и сложных систем.
- •2. Классификация моделей и методов моделирования
- •2.1. Основные типы системных моделей
- •2.2. Классификация методов моделирования сложных систем
- •3. Математические методы моделирования
- •3.1. Принципы и подходы к построению математических моделей
- •3.2. Этапы построения математической модели
- •3.3. Примеры математических моделей
- •3.3.1. Модель целенаправленной системы
- •3.3.2. Модель абстрактной системы с неопределённой структурой
- •3.3.3. Модель целенаправленной системы с управлением.
- •3.3.4. Модель оптимального планирования доставки товаров потребителям
- •3.3.5. Модель в контуре управления экономической системы
- •4. Имитационное моделирование.
- •4.1. Понятие имитационного моделирования
- •4.2. Автоматизация имитационного моделирования
- •4.3. Дискретно-событийное моделирование
- •4.3.1. Системы массового обслуживания
- •4.3.2. Механизмы продвижения времени
- •4.3.3. Обозначения смо-систем
- •4.3.4. Параметры систем массового обслуживания
- •4.3.5. Критерии оценки работы систем массового обслуживания
- •4.3.6. Компоненты дискретно-событийной имитационной модели и их программная организация
- •4.4 Этапы исследования системы с помощью имитационного моделирования
- •4.5. Преимущества, недостатки и ошибки имитационного моделирования
- •4.6. Моделирование по методу Монте-Карло
- •4.7. Программное обеспечение имитационного моделирования
- •4.7.1. Классификация программных средств имитационного моделирования
- •4.7.2. Общие элементы моделирования
- •4.7.3. Универсальные пакеты имитационного моделирования
- •4.7.4. Предметно-ориентированные пакеты имитационного моделирования
- •5. Моделирование организационных систем
- •5.1. Концепции и стандарты организационного моделирования
- •5.2. Метамоделирование
- •5.3. Метамодель общих хранилищ данных (cwm)
- •5.4. Моделирование организационных систем
- •6. Методика и стандарты функционального моделирования
- •6.1. Методика функционального моделирования sadt
- •6.2. Диаграммы «сущность-связь»
- •6.3.Стандарты idef
- •6.3. Система моделирования бизнес-процессов AllFusion Process Modeler
- •7. Объектно-ориентированное моделирование
- •7.1. Принципы и методология объектно-ориентированного подхода.
- •7.2. Унифицированный язык моделирования uml
- •7.2.1. Архитектура uml
- •7.2.2. Диаграммы uml
- •7.2.3. Использование uml при моделировании систем реального времени
- •7.2.4. Преимущества uml
- •7.2.5. Унифицированный Процесс разработки по компании Rational
- •7.3. Архитектура, управляемая моделями
- •7.4. Разработка, управляемая моделями (mdd)
- •7.5. Объектно-ориентированное программирование
- •7.6 Инструментальные средства поддержки оо‑технологий
- •8. Моделирование бизнес-процессов
- •9. Моделирование систем с soa-архитектурой
- •9.1. Композитная структура программ
- •9.2. Концепция soa
- •9.3. Сервис-ориентированное моделирование
- •10. Модели систем с «облачной» архитектурой
- •Заключение
- •Литература
7. Объектно-ориентированное моделирование
Разработка программного обеспечения связана с изготовлением высококачественных систем при умеренных затратах на выполнение работ, а следовательно, и умеренной стоимости. При разработке систем повышенной сложности все попытки решить проблему качества программного обеспечения с помощью функциональных методов разработки, языков программирования сверхвысокого уровня (Very High Level Language, VHLL), CASE-средств, технологий прототипирования, систем баз данных и генераторов кода не приводили к успеху.
Толчком к переходу на объектно-ориентированные методы послужило то, что разработка многих сложных сиcтем функциональными методами либо не завершались в срок, либо требовали резкого увеличения бюджета, либо не использовались, потому что в них содержались существенные ошибки. Так отчеты Standish Group (1995—1997гг.) подтвердили, что почти 59% проектов США были аннулированы или выходили за рамки выделенных на них ассигнований и сроков разработки.
Интерес к объектно-ориентированному моделированию существенно возрос в связи с тем, что объектные модели коренным образом изменили традиционную функциональную архитектуру программных систем. На основе таких моделей строится архитектура управляемая моделями (Model-Driven Architecture, MDA, состоящая из взаимосвязанных определёнными отношениями и строго типизированных групп (классов) программных объектов, моделирующих динамические сущности14 реального или идеального мира.
Подчеркнём, что имитационное и функциональное моделирование ориентированы на моделирование процессов функционирования информационных систем. Для полномасштабного моделирования сложных информационных систем, таких как АСУ/КИС, этого явно недостаточно. Модели таких систем должны быть комплексными, (охватывающими достаточно широкий набор их архитектурных компонентов – информационных, программных, инфраструктурных, подсистем управления и т.д.) и объектно-ориентированными, в основе которых лежат концептуальные модели предметных областей таких систем.
Современные инструментальные средства разработки объектно-ориентированных систем характеризуются следующими свойствами:
Поддержка генерации кода и обратного проектирования (т.е. восстановление визуальной модели по программному коду) сразу для нескольких языков, включая: Object Pascal, Visual Basic, C++, C#, Java, PowerBuilder, CORBA Interface Definition Language (IDL), а также языков определения данных (Data Definition Languages) для большинства СУБД.
Поддержка визуального объектно-ориентированного моделирования и полная совместимость с языком UML (Unified Modeling Language), который начиная с 1997 года, определён как стандарт для графического описания динамических моделей.
Ориентация на проектировщиков информационных систем, менеджеров и программистов.
Объектно-ориентированное моделирование обеспечивает следующие преимущества:
обеспечивает возможность повторного использования объектов и удобный способ их изменения;
помогает справиться со сложными системами благодаря делению их на различные объекты;
упрощает изменение моделей, поскольку изменения в объекте-предке отображаются в объектах-потомках;
предоставляет возможность нескольким программистам работать над одним большим проектом.
Существенно облегчает разработку, отладку, сопровождение и модернизацию сложных программных систем.