Моделирование систем.ppt
- Количество слайдов: 57
Моделирование систем Лекционных – 32 Лабораторных работ – 20 часов Курсовая работа – есть Форма отчетности – экзамен Преподаватель: д. т. н. , профессор Гвоздев Владимир Ефимович
Зачем нужна информационная система?
Общее видение программной системы Окружающая объект управления среда Информационные продукты и услуги, получаемые помимо автоматизированной системы Объект управления Управляющая система Управляющие воздействия Информационные потребности Запросы на исходные данные, информацию я на мм а ра ем ог ст Пр си ая тн ая ра ющ па ля Ап тав с со Данные и информация, характеризующие состояние объекта управления Автоматизированная информационная система Персонал Информационные продукты/услуги
ЗАЧЕМ НУЖНО МОДЕЛИРОВАНИЕ ИНФОРМАЦИОННЫХ СИСТЕМ?
Итоги реализации программных проектов (по данным Standish Group за 2004 год)
КОНУС НЕОПРЕДЕЛЕННОСТИ ПРОГРАММНОГО ПРОДУКТА Точность оценки стоимости и времени 4 х 2 х х 0, 5 х 0, 25 х Анализ требований пользовател ей Проектирование системы Реализация Интеграция и внедрение Функционирование и сопровождение 2
ПРИЧИНЫ НИЗКОЙ ЭФФЕКТИВНОСТИ ИНФОРМАЦИОННОГО 1 ОБЕСПЕЧЕНИЯ
ТИПЫ ДЕФЕКТОВ И ОШИБОК ПРОЕКТОВ ПРОГРАММНЫХ СРЕДСТВ Организационные дефекты проекта Ошибки оценки характеристик системы и внешней среды Ошибки вследствие сложности проекта Ошибки вследствие большого масштаба проекта Ошибки корректности требований и планирования проекта Ошибки проектирования и структуры программного средства Системные ошибки программного средства Алгоритмические ошибки программного средства Ошибки реализации спецификаций программных компонентов Программные ошибки компонентов Ошибки в документации программного средства Технологические ошибки ввода и отображение данных Риск и опасность последствий ошибок 8
УПРАВЛЯЕМОЕ РАЗВИТИЕ ИНФОРМАЦИОННЫХ СИСТЕМ
Понятие проекта • В [Бэгьюли Ф. , 2002] приводятся пять основных характеристик проекта, отличающих их от других классов сложных систем: • проекты имеют разовый характер; • каждый проект по-своему неповторим; • проекты ограничены четкими временными рамками; • все проекты сопряжены с изменениями. В работе [Ван Гиг Дж. , 1981] отмечается, что оптимальный проект системы нельзя получить путем внесения небольших изменений в существующие принятые формы. Он основывается на планировании, оценке, принятии таких решений, которые предполагают новые положительные изменения для системы в целом; • проекты дают определенные результаты.
ПОНЯТИЕ ЗРЕЛОСТИ Понятие зрелости организации Незрелая организация: процесс разработки ПО зависит только от конкретных исполнителей и менеджеров, проектные и управленческие решения часто импровизируются «на ходу» . Велика вероятность превышения бюджета и нарушения сроков сдачи проекта. Зрелая организация: существует инфраструктура и корпоративная культура, поддерживающие процесс разработки ПО: • Имеются четко определенные процедуры создания ПО и управления проектами. Процедуры уточняются и совершенствуются в пилотных проектах или с помощью анализа «стоимость/прибыль» . • Оценки времени и стоимости выполнения работ основываются на накопленном опыте и достаточно точны. • Существуют стандарты на процессы разработки, тестирования, внедрения ПО, правила оформления конечного программного кода, компонентов, интерфейсов и т. д.
РАЗВИТИЕ CMM В CMMI Развитие CMM Software CMM People CMM Integration Особенности CMMI Стандарт ориентирован на применение в относительно крупных организациях при реализации крупных проектов
Уровни зрелости технологической поддержки жизненного цикла комплекса программ Уровень 1 – «начальный» • Приближенная оценка процессов, масштаба программы и объема работ Уровень 2 – «управляемый – базовое управление» • • Управление процессами – управление требованиями Планирование и мониторинг проекта Управление разработкой, компоновкой и конфигурацией Обеспечение качества, контроль процессов и продуктов
Уровни зрелости технологической поддержки жизненного цикла комплекса программ Уровень 3 – «определенный- стандартизация процессов» • Определение стандартного процесса • Интегрированное управление проектом, компонентами и продуктом • Верификация, валидация, контроль качества процессов и продуктов • Контроль и управление ресурсами, рисками • Документирование процессов и продуктов • Обучение
Уровни зрелости технологической поддержки жизненного цикла комплекса программ Уровень 4 – «предсказуемый – количественное управление» • Измерение характеристик компонентов, продукта и процессов • Количественное управление процессами, затратами и характеристиками качества • Распределение, контроль, обеспечение процессов ресурсами • Количественный контроль и управление рисками процессов, ресурсов и качества • Контроль и управление поставкой продуктов
Уровни зрелости технологической поддержки жизненного цикла комплекса программ Уровень 5 – «оптимизационный- непрерывное улучшение» • Управление изменением и качеством процессов и продукта • Инновации, количественное управление процессами и обеспечением ресурсов • Совершенствование качества и управление процессами и продуктами • Непрерывное измерение и улучшение качества продуктов и процессов
В чем разница между большой и малой программной системами?
Подходы к созданию программных продуктов Назначение Автоматизация отдельных задач (As Is) Легкие методологии Комплексная автоматизация обработки информации как составляющая реинжениринга бизнес-процессов Тяжелые методологии
Влияние размера проекта на его реализуемость Размер в функциональных точках (и примерное количество строк программного кода) Преждевременное завершение Своевременное завершение Опоздание Провал (отмена) 10 FP (1000 строк) 11 % 81 % 6 % 2 % 100 FP (10 000 строк) 6 % 75 % 12 % 7 % 1000 FP (100 000 строк) 1 % 61 % 18 % 20 % 10 000 FP (1 000 строк) <1 % 28 % 24 % 48 % 100 000 FP (10 000 строк) 0 % 14 % 21 % 65 %
Легкие методологии создания программных продуктов Малые проекты Невысокая стоимость внесения изменений. Допускаются разные варианты реализации ПП Привязка к разработчику Короткий период планирования. Низкие требования к качеству планирования Быстрое получение результатов Малые коллективы Малое время жизни ПП Ограниченное развитие Малый риск исполнителя и большой риск заказчика Мало времени уходит на согласование. Высокая индивидуальная производительность разработчиков Низкая стоимость разработки Низкая мобильность Малый риск исполнителя и большой риск заказчика
Системная модель проекта
Тяжелые методологии создания программных продуктов Большие проекты (системное проектирование ПП) Высокая стоимость внесения изменений в проект, что приводит к единственному варианту реализации ПП Большие коллективы Высокая стоимость разработки Мобильность и возможность развития ПП Большое время между возникновением идеи и получением работающей версии системы Большое время жизни ПП Независимость от разработчика Длительный период планирование; высокие требования к качеству планирования Много времени уходит на согласование. Низкая индивидуальная производительность разработчиков Совершенствование системы сопоставимо со временем существования организации
В чем причина низкой эффективности программных проектов?
ЭВОЛЮЦИЯ АИС П П П а) несвязанные прикладные программы б) локальные информационные системы на основе АБД АБД а) б) П П П. DM DM DW DW в) П. г) в) АИС на основе хранилищ данных г) АИС на основе хранилищ и витрин данных
Влияние масштаба
Понятие модели
Что такое модель? Моделирование – метод познания окружающего мира, который можно отнести к общенаучным методам, применяемым как эмпирическом, так и на теоретическом уровне познания.
Зачем нужны модели? 1. Корпоративное знание 2. Отображение реального объекта 3. Средство борьбы с «череззаборной инженерией» (средство коммуникации правообладателей)
Свойства модели: • • Неполнота модели. При построении модели исследователь всегда исходит из поставленных целей, учитывает только наиболее существенные для их достижения факторы. Поэтому любая модель нетождественна объекту-оригиналу и, следовательно, неполна, поскольку при ее построении исследователь учитывал лишь важнейшие с его точки зрения факторы. «Полная» модель, очевидно, будет полностью тождественна оригиналу (Норберт Винер: «наилучшей моделью кота будет другой кот, а ещё лучше – тот самый кот» ). Потенциальность модели, т. е. предсказательность с позиций получения новых знаний об исследуемом объекте. Академик Н. Н. Моисеев: «модель можно рассматривать как специальную форму кодирования информации. В отличие от обычного прогнозирования, когда известна вся исходная информация, и мы лишь переводим ее на другой язык, модель, какой бы язык она не использовала, кодирует и ту информацию, которую люди еще не узнали. Можно сказать, что модель содержит в себе потенциальное знание. Это «собственный ум» , потенциальность, богатство модели позволяет модели выступать в качестве самостоятельного объекта исследования» .
Классы моделей • • Идеальное моделирование отличается от материального тем, что основано не на материализированной аналогии объекта и модели, а на аналогии идеальной, мыслимой и всегда носит теоретический характер. Идеальное моделирование разделяют на интуитивное и научное. Интуитивное моделирование – это моделирование, основанное на интуитивном (не обоснованном с позиций формальной логики) представлении об объекте исследования, не поддающееся формализации или не нуждающееся в ней. Например, интуитивной моделью окружающего мира является жизненный опыт любого человека. Научное моделирование – это всегда логически обоснованное моделирование, использующее минимальное число предположений, принятых в качестве гипотез на основании наблюдений за объектом моделирования. В отличие от интуитивного научное моделирование знает не только, как необходимо моделировать, но и почему так нужно делать. Знаковым называют моделирование, использующее в качестве моделей знаковые изображения какого-либо вида: схемы, графики, чертежи, наборы символов, включающее также совокупность законов и правил, по которым можно оперировать с выбранными знаковыми образованиями и элементами.
Классы знаковых моделей 1. 2. 3. 4. Модели состава Структурные модели Функциональные модели Потоковые модели
Классы моделей (с точки зрения управления)
Структура процесса стратегического управления
Четырехкомпонентная архитектура информационной системы (Модель состава -Tom Finnegan) Ресурсн ая Технологиче ская Информацион ная Организацио нная
Системная модель программного продукта (пример структурной модели)
МОДЕЛИ ЖИЗНЕННОГО ЦИКЛА ПРОГРАММНЫХ ПРОДУКТОВ
• 1. Code-and-fix model (в отечественных учебниках эта модель называется «стихийным программированием» [Иванова Г. С. , 2003]). Это самая ранняя модель ЖЦ. Реализация программного продукта сводится к непосредственному кодированию задачи в том виде, как она понимается. • Особенностями этой модели являются: • Трудность модификации и развития ПП из-за недостаточно проработанной проектной стадии. • Вследствие того, что задача кодировалась как понималась, т. е. стадия изучения и согласования пользовательских требований реализовывалась посредством экспериментирования с уже готовой программой, функциональные возможности программного продукта редко полностью согласуются с потребностями пользователей Гораздо чаще программа оказывается полностью непригодной. • Сложность тестирования программного продукта
• Stagewise model (модель постадийного создания). Появление этой модели датируется 1956 г. Суть модели состояла в том, что разработка ПП сводилась к следующей последовательности действий: • Планирование разработки. • Разработка операционной спецификации. • Кодирование. • Параметрическое тестирование модулей. • Тестирование сборки. • Опытную эксплуатацию. • Оценку системы пользователем.
Водопадная модель
он Ветк ак стру и рова ния ий ован реб ка т Вет Общий вид V-модели жизненного цикла 5
Внешняя и внутренняя среды программного проекта
Содержание работ на разных фазах проекта
Концептуальная фаза
Проектная фаза
Фаза выполнения
Фаза завершения
Технология проверки правильности математической модели • • Контроль размерностей Контроль порядков Контроль экстремальных ситуаций Контроль граничных условий, (включающий проверку того, что граничные условия действительно наложены) • Контроль физического смысла • Контроль математической замкнутости, (состоящий в проверке того, что выписанная система математических соотношений дает возможность, притом однозначно, решить поставленную математическую задачу)
Системная модель объекта моделирования E Х S X- Входные данные Y- Выходные данные E - Воздействие окружающей среды S - Внутреннее состояние системы Y
Классы задач моделирования 1. Построение дескриптивных моделей X, Y, T, S 2. Прогностические задачи: А: {Х, S, E} Y A: {Х, S} S A: {Х} и т. д. 3. Оптимизационные задачи 4. Информационная поддержка управления в условиях неопределенности
Этапы построения математической модели
Методы моделирования • Аналитические методы • Численные методы
Классы погрешностей при численном моделировании • неустранимая погрешность, связанная с неточным заданием исходных данных (начальные и граничные условия, коэффициенты и правые части уравнений); • погрешность метода, связанная с переходом к дискретному аналогу исходной задачи (например, заменяя производную разностным аналогом , получаем погрешность дискретизации, имеющую при ∆x→ 0 порядок ∆x); • ошибка округления, связанная с конечной разрядностью чисел, представляемых в ЭВМ.
Вопросы для самопроверки • • • Что такое модель и моделирование? Цели моделирования? Какие существуют типы моделирования? В чем отличие моделирования натурного от мысленного? Назовите характерные особенности аналоговых моделей. Какие модели называют содержательными?
Вопросы для самопроверки • • • Какое моделирование называется математическим? Сформулируйте достоинства математических моделей. Что может выступать в качестве оператора при математическом моделировании? По каким классификационным признакам можно разделять математические модели? Чем простые модели отличаются от сложных?
Вопросы для самопроверки • • • В чем заключается сложность моделирования систем? Какие типы моделей можно выделить по виду оператора моделирования? Чем отличаются линейные и нелинейные модели? Кто участвует в разработке содержательной постановки задачи? На основании какой информации выполняется формулировка концептуальной постановки задачи моделирования?
Вопросы для самопроверки • • Какие функции выполняет постановщик задач? Какая из постановок задачи (содержательная, концептуальная или математическая) является самой абстрактной? Что включает понятие корректности математической задачи? Каким условиям должна удовлетворять корректная модель? Какие цели преследует проверка адекватности модели? Перечислите причины возможной неадекватности модели. Для решения каких задач может быть использована математическая модель
Рекомендуемая литература 1. Введение в математическое моделирование/Под ред. П. В. Трусова М. : Логос, 2004 2. Вентцель Е. С. Исследование операций М. , Наука, 2001 3. Прикладное математическое моделирование/Гвоздев В. Е. , Колоденкова А. Е. , Мукасеева В. Н. , Хасанов А. Ю. , Ямалов И. У. , - Учебное электронное издание, : Уфа, УГАТУ, 2009 4. Словарь терминов в области программных проектов / Гвоздев В. Е. , Колоденкова А. Е, Бежаева О. Я. , - Учебное электронное издание, : Уфа, УГАТУ, 2009 5. Системные вопросы проектирования программных продуктов: Учебное пособие / В. Е. Гвоздев, А. Е. Колоденкова; Уфимск. Гос. Авиац. Техн. ун. – Уфа, АН РБ, изд-во «Гилем» , 2010. – 188 с. 6. Программные проекты: базовые термины и определения: учеб. Пособие / В. Е. Гвоздев и др. ; Уфимск. Гос. Авиац. Техн. ун- т. – Уфа, УГАТУ, 2011. – 218 с.
Моделирование систем.ppt