- •Введение
- •1. Проблемы автоматизированного проектирования
- •1.1. Типовые задачи проектирования электронных средств
- •1.2. Роль формализации и творчества
- •1.2.1. Структура процесса проектирования
- •1.2.2. Анализ в проектировании
- •1.2.3. Параметрический синтез
- •1.2.4. Структурный синтез
- •1.2.5. Особенности применения типовых проектных процедур при проектировании эс
- •1.3. Искусственный интеллект в науке и технике
- •1.3.1. Базовые положения ии
- •1.3.2. Методики и подходы построения систем ии
- •1.3.3. Проблемы создания ии
- •1.3.4. Реализация систем ии
- •2. Новые методологии проектирования (Вендров)
- •2.1. Case- технологии
- •2.1.1. Общие сведения
- •2.1.2. Основы методологии проектирования ис
- •2.1.2.1. Жизненный цикл
- •2.2. Структурный подход к проектированию ис
- •2.2.1. Сущность структурного подхода
- •2.2.2.2. Типы связей между функциями
- •2.2.3.1. Основные понятия er-диаграмм
- •2.2.3.2. Основные этапы разработки erd
- •2.2.3.3. Пример erd-технологии
- •2.2.4.1. Общие положения
- •2.2.4.2. Миниспецификация.
- •2.2.4.4. Построение диаграмм.
- •2.2.5. Sadt-тенология
- •2.2.5.1. Введение
- •2.2.5.2. Sadt-диаграммы
- •2.2.6. Сравнение методологий
- •2.2.7. Дополнения к диаграммам и моделям
- •2.2.7.1. Дополнения к диаграммам
- •2.2.7.2. Определение терминологии с помощью глоссария
- •2.2.7.3. Пояснение содержания с помощью текста
- •2.2.7.3. Пояснение с помощью рисунков.
- •2.2.7.4. Дополнение моделей
- •Пример:
- •2.2.8. Стандарты idef
- •2.2.8.1. Общие положения
- •2.2.8.2. История возникновения стандарта idef0
- •2.2.8.3. Основные элементы и понятия idef0
- •2.2.8 4. Принципы ограничения сложности idef0-диаграмм
- •2.2.8.5. Применение технологии idef0 к решению задачи автотрассировки
- •2.3.2. Сущность метода
- •2.3.2.1. Объектно-ориентированный анализ
- •2.3.2.2. Объектно-ориентированное проектирование
- •2.3.2.3. Информационные модели
- •2.3.2.4. Модели состояний
- •2.3.2.5. Модели процессов
- •2.3.3. Рабочие продукты ооап
- •2.3.4. Язык uml
- •2.3.4.1. Введение
- •2.3.4.2. Структура языка uml
- •2.3.4.3. Средства uml-моделирования
- •2.3.4.4. Элементы языка
- •2.3.4.5. Пример
- •3. Интеллектуализация средств проектирования
- •3.1. Общие сведения о иис
- •3.1.1. Основа концепции иис
- •3.1.2. Классификация иис
- •3.2. Системы с интеллектуальным интерфейсом
- •3.2.1. Интеллектуальные информационно-поисковые системы
- •3.2.2. Гипертекстовые системы
- •3.2.3. Системы контекстной помощи
- •3.2.4. Системы когнитивной графики
- •3.3. Экспертные системы
- •3.3.1. Общие сведения
- •3.3.2. Назначение экспертных систем
- •3.3.3. Классификация эс
- •3.3.4. Архитектура экспертной системы
- •3.4. Самообучающиеся системы
- •3.4.1. Виды систем
- •3.4.2. Система с индуктивным выводом
- •3.4.2.3. Информационные хранилища (Data Warehouse).
- •3.5. Адаптивные системы
- •3.5.1. Общие сведения
- •3.5.2. Нейронные сети
- •Этапы решения задач:
- •Сбор данных для обучения
- •Выбор топологии сети
- •4. Экспериментальный подбор параметров обучения
- •5. Собственно обучение сети
- •6. Проверка адекватности обучения
- •3.5.3 Генетический алгоритм
- •3.5.4. Байесовская сеть
- •4. Интеллектуальные сапр
- •4.1. Новая информационная технология разработки программных средств
- •4.2. Применение иис для задач проектирования
- •4.3. Пример использования ии
- •4.3.1. Ускорение создания систем проектирования
- •4.3.2. Уровни знания системы спрут-Технология
- •4.3.3. Sprut ExPro: программирование для непрограммистов
- •4.3.3.1. Описание системы
- •4.3.3.2. Ввод экспертных знаний в систему
- •4.3.3.3. Базы экспертных знаний
- •Список использованных источников:
2.3.3. Рабочие продукты ооап
На рис. 5 изображена информационная карта рабочих продуктов ООА. На этом рисунке видно, что схема домена и проектная матрица создаются для всей системы. Чтобы описать взаимодействие событий между различными подсистемами в пределах домена, для каждого домена создается модель взаимодействия подсистем. Большинство рабочих продуктов ООА нужны на уровне подсистем: информационная модель, модель взаимодействия объектов, модель доступа к объектам и вспомогательные таблицы, описания и списки создаются для каждой подсистемы. Ниже подсистемы находятся объекты, которые её составляют: модель состояний создается для каждого объекта и связи, которые имеют интересующее нас динамическое поведение. Действия каждой модели состояний обеспечивают следующий уровень: диаграмма потоков данных действий создается для каждого состояния каждой модели состояний. Наконец, описание процесса создается для каждого сложного процесса действия.
Рис. 5. Рабочий продукт для Автоматической Системы Разводки Печатных Плат
Литература:
Шлеер С., Меллор С. Объектно-ориентированный анализ: моделирование мира в состояниях: Пер. с англ. — Киев: Диалектика, 1993.
Буч Г. Объектно-ориентированный анализ и проектирование с примерами приложений на C++. — Невский Диалект, 1998.
Хингстон Д., Логхид Ф., Ирвин Р. Новый топологический автотрассировщик // ChipNews — 2002, №2(65) — С. 60—64.
2.3.4. Язык uml
2.3.4.1. Введение
Язык Unified Modelling Language (UML) можно считать результатом довольно длинной и еще не завершившейся эволюции методологий моделирования и дизайна.
В 90-х годах наиболее популярными были три объектно-ориентированных подхода:
OMT (автор Джеймс Рамбо), сильной стороной которого является анализ, а слабой ‒ дизайн;
OODA (автор Гради Буч) ‒ сильная сторона этого языка ‒ дизайн, а слабая ‒ анализ;
OOSE (автор Айвар Якобсон) ‒ сильной стороной данного языка является анализ поведения (behavior analysis), однако в остальных областях он достаточно слаб.
В результате соперничества этих методов авторы вышеперечисленных методологий создали унифицированный язык моделирования UML (рис. 1), который унаследовал присутствовавшие в других языках элементы. Далее приведена оригинальная терминология заимствованных/унаследованных элементов языка этой методологии ‒ дело в том, что сейчас существует несколько вариантов переводов этих терминов на русский язык.
Рис. 1. UML и его предшественники
Данная унификация преследовала три основные цели:
моделирование системы, начиная с концепции и заканчивая исполняемым модулем, с применением объектно-ориентированных методик;
разрешение проблем масштабирования в сложных системах;
создание языка моделирования, используемого и человеком, и компьютером.
Официальной датой начала работ по UML считают октябрь 1994 года, когда Рамбо перешел в компанию Rational (ныне Rational ‒ одно из подразделений корпорации IBM). Последним стандартом этого языка является версия UML1.3, вышедшая в 1999 году.
UML ‒ прежде всего язык, и, как всякое языковое средство, он предоставляет словарь и правила комбинирования слов в этом словаре. В данном случае словарь и правила фокусируются на концептуальном и физическом представлениях системы. Язык диктует, как создать и прочитать модель, однако не содержит никаких рекомендаций о том, какую модель системы необходимо создать, ‒ это выходит за рамки UML и является прерогативой процесса разработки программного обеспечения. В связи с этим, видимо, UML довольно часто ассоциируют с RUP ‒ одним из возможных процессов, рекомендующих, какие модели, как и когда нужно создавать для успешной разработки продукта.
UML ‒ это язык визуализации. Написание моделей на UML преследует одну простую цель ‒ облегчение процесса передачи информации о системе. За каждым символом UML стоит строго определенная семантика, что позволяет избегать ошибок интерпретации (ответы на вопросы типа «а что имел в виду разработчик Х, когда он описал иерархию классов Y…» и т.п. будут достаточно прозрачны).
UML ‒ это язык спецификаций и точных определений. В этом смысле моделирование на UML означает построение моделей, которые точны, недвусмысленны и полны.
UML ‒ это язык конструирования. UML не является визуальным языком программирования, но модели в терминах UML могут быть отображены на определенный набор объектно-ориентированных языков программирования. UML предоставляет возможности прямого (существующая модель ® новый код) и обратного (существующий код ® новая модель) проектирования. Достаточно часто средства UML-моделирования реализуют отображения UML-моделей в коде на языках Java, C++, CORBA, VB, Smalltalk.
UML ‒ это язык документирования. Процесс разработки программного обеспечения предусматривает не только написание кода, но и создание таких артефактов, как список требований, описание архитектуры, дизайн, исходный код системы, планирование проекта, тесты, набор прототипов, релизы продукта. В зависимости от культуры разработки продукта в той или иной компании степень формализации данных документов существенно различается, варьируясь от строго определенных шаблонов и формата документов до разговоров на произвольную тему по e-mail или лично. Тем не менее все эти артефакты критичны для успешного процесса разработки продукта. UML предоставляет средства отображения требований к системе, построения документации, тестов, моделирования необходимых действий для планирования проекта и для управления поставленными конечному пользователю релизами.
