- •Глава 1. Введение в автоматизированное проектирование
- •1.1. Понятие проектирования
- •1.2. Принципы системного подхода
- •1.3. Уровни проектирования
- •1.4. Стадии проектирования
- •1.5. Модели и их параметры в сапр
- •1.6. Проектные процедуры
- •1.7. Жизненный цикл изделий
- •1.8. Структура сапр
- •1.9. Введение в cals-технологии
- •1.10. Этапы проектирования автоматизированных систем
- •Лекция 2. Техническое обеспечение сапр
- •2.1. Требования к техническому обеспечению сапр
- •2.2. Вычислительные системы для сапр
- •2.2.1. Процессоры эвм
- •2.2.2. Память эвм
- •2.2.3. Мониторы
- •2.2.4. Периферийные устройства
- •2.2.5. Шины компьютера
- •2.3. Типы вычислительных машин и систем
- •2.4. Персональный компьютер
- •2.5. Рабочие станции
- •2.6. Архитектуры серверов и суперкомпьютеров
- •2. В.Н. Дацюк, а.А. Букатов, а.И. Жегуло/ методическое пособие по курсу "Многопроцессорные системы и параллельное программирование". -http://rsusu1.Rnd.Runnet.Ru/tutor/method/m1/content.Html
- •2.7. Примеры серверов
- •2.8. Суперкомпьютеры XXI века
- •Лекция 3. Математическое обеспечение анализа проектных решений
- •3.1. Требования к математическим моделям и методам в сапр
- •3.2. Фазовые переменные, компонентные и топологические уравнения
- •3.3. Основные понятия теории графов
- •3.4. Представление топологических уравнений
- •3.5. Особенности эквивалентных схем механических объектов
- •3.6. Методы формирования математических моделей на макроуровне
- •3.7. Выбор методов анализа во временной области
- •3.8. Алгоритм численного интегрирования систем дифференциальных уравнений
- •3.9. Методы решения систем нелинейных алгебраических уравнений
- •3.10. Методы решения систем линейных алгебраических уравнений
- •1. Alglib User Guide. - http://alglib.Sources.Ru/linequations/general/lu.Php. - Проверено 15.12.2009. Лекция 4. Математическое обеспечение анализа проектных решений
- •4.1. Математические модели для анализа на микроуровне
- •4.2. Методы анализа на микроуровне
- •4.3. Метод конечных элементов для анализа механической прочности
- •4.4. Моделирование аналоговых устройств на функциональном уровне
- •4.5. Математические модели дискретных устройств
- •4.6. Методы логического моделирования
- •4.7. Системы массового обслуживания
- •4.8. Аналитические модели смо
- •4.9. Уравнения Колмогорова
- •4.10. Пример аналитической модели
- •4.11. Модель многоканальной смо с отказами
- •4.12. Принципы имитационного моделирования
- •4.13. Событийный метод моделирования
- •4.14. Краткое описание языка gpss
- •1. Томашевский в., Жданова е. Имитационное моделирование в среде gpss. — м.: Бестселлер, 2003.
- •4.15. Сети Петри
- •1. В.Э.Малышкин. Основы параллельных вычислений. -2003 цит сгга, http://www.Ssga.Ru/metodich/paral1/contents.Html
- •4.16. Анализ сетей Петри
- •1. В.Э.Малышкин. Основы параллельных вычислений. -2003 цит сгга, http://www.Ssga.Ru/metodich/paral1/contents.Html Лекция 5. Геометрическое моделирование и машинная графика
- •5.1. Типы геометрических моделей
- •5.2. Методы и алгоритмы компьютерной графики
- •5.3. Программы компьютерной графики
- •5.4. Построение геометрических моделей
- •5.5. Поверхностные модели
- •1. Семенов а.Б. Программирование графических процессоров с использованием Direct3d и hlsl. -http://www.Intuit.Ru/department/graphics/direct3dhlsl/6/1.Html
- •5.7. Графический процессор
- •1. Пахомов с. Революция в мире графических процессоров // КомпьютерПресс, № 12, 2006.
- •5.8. Шейдеры
- •5.9. Геометрические шейдеры
- •5.10. Унифицированный графический процессор
- •1. Пахомов с. Революция в мире графических процессоров // КомпьютерПресс, № 12, 2006.
- •5.11. Примеры графических процессоров
- •Лекция 6. Математическое обеспечение синтеза проектных решений
- •6.1. Критерии оптимальности
- •6.2. Задачи оптимизации с учетом допусков
- •6.3. Классификация методов математического программирования
- •6.4. Методы одномерной оптимизации
- •6.5. Методы безусловной оптимизации
- •6.6. Подходы к решению задач структурного синтеза
- •6.7. Морфологические таблицы
- •6.8. Альтернативные графы
- •Лекция 7.
- •7.1. Интеллектуальные системы
- •7.2. Планирование процессов и распределение ресурсов
- •7.3. Методы локальной оптимизации и поиска с запретами
- •7.4. Методы распространения ограничений
- •7.5. Эволюционные методы
- •7.6. Простой генетический алгоритм
- •7.7. Кроссовер
- •7.8. Метод комбинирования эвристик
- •1. Норенков и.П. Эвристики и их комбинации в генетических методах дискретной оптимизации// Информационные технологии, 1999, № 1.
- •7.9. Примеры применения генетических методов
- •Лекция 8. Автоматизированные системы в промышленности
- •8.1. Системы erp
- •8.2. Стандарт mrp II
- •8.3. Логистические системы
- •8.4. Системы scm
- •8.6. Производственная исполнительная система mes
- •8.7. Автоматизированное управление технологическими процессами
- •8.8. Программирование для станков с чпу
- •8.9. Системы scada
- •8.10. Типовой маршрут проектирования в mcad
- •8.11. Типы сапр в области машиностроения
- •8.12. Основные функции cad-систем
- •8.13. Основные функции cae-систем
- •8.14. Основные функции cam-систем
- •8.15. Графическое ядро
- •Лекция 9.
- •9.1. Структура cad/cam систем
- •9.2. Машиностроительные сапр верхнего уровня
- •9.3. Маршруты проектирования сбис
- •9.4. Схемотехническое проектирование
- •9.5. Модели логических схем цифровой рэа.
- •9.6. Конструкторское проектирование сбис
- •9.7. Проектирование печатных плат
- •9.8. Назначение языка vhdl
- •Лекция10. Методическое и программное обеспечение автоматизированных систем
- •10.1. Типы case-систем
- •10.2. Спецификации проектов программных систем
- •10.3. Методика idef0
- •10.4. Методика idef3
- •10.5. Методика idef1x
- •10.7. Методика проектирования информационных систем на основе uml
- •10.8. Программное обеспечение case-систем
- •10.9. Интегрированные среды разработки приложений
- •Лекция 11. Технологии информационной поддержки этапов жизненного цикла изделий
- •11.1. Обзор cals-стандартов
- •11.2. Структура стандартов step
- •11.4. Интегрированная логистическая поддержка
- •11.5. Интерактивные электронные технические руководства
- •11.6. Стандарт aecma s1000d
- •11.7. Электронная цифровая подпись
- •11.8. Стандарты управления качеством промышленной продукции
- •Лекция 12. Технологии информационной поддержки этапов жизненного цикла изделий
- •12.1. Программное обеспечение cals-технологий
- •12.2. Язык html
- •12.3. Язык xml
- •12.5. Форматирование Web-страниц
- •12.6. Доступ к xml-документам
- •12.7. Мультиагентные системы
- •12.8. Технология soap
- •12.9. Компонентно-ориентированные технологии
10.2. Спецификации проектов программных систем
Важное значение в процессе разработки ПО имеют средства спецификации проектов ПО. Средства спецификации в значительной мере определяют суть методов CASE.
Способы и средства спецификации классифицируют по базовой методологии, используемой для декомпозиции ПО, как сложной системы, и по аспектам моделирования ПО.
Различают два подхода к декомпозиции ПО. Первый способ называют функциональным или структурным. Он основан на выделении функций и потоков данных. Второй способ — объектный, выражает идеи объектно-ориентированного проектирования и программирования.
Аспектами моделирования приложений являются функциональное, поведенческое и информационное описания.
Практически все способы функциональных спецификаций имеют следующие общие черты:
модель имеет иерархическую структуру, представляемую в виде диаграмм нескольких уровней;
элементарной частью диаграммы каждого уровня является конструкция вход-функция-выход;
необходимая дополнительная информация содержится в файлах поясняющего текста.
В большинстве случаев функциональные диаграммы являются диаграммами потоков данных (DFD — Data Flow Diagram). В DFD блоки (прямоугольники) соответствуют функциям, дуги — входным и выходным потокам данных. Поясняющий текст представлен в виде "словарей данных", в которых указаны компонентный состав потоков данных, число повторений циклов и т.п. Для описания структуры информационных потоков можно использовать нотацию Бэкуса-Наура.
Одна из нотаций для DFD предложена Е.Йорданом. В ней описывают процессы (функции), потоки данных, хранилища и внешние сущности, их условные обозначения показаны на рис. 1.
|
Рис. 1. Изображения элементов в нотации Йордана
Разработка DFD начинается с построения диаграммы верхнего уровня, отражающей связи программной системы, представленной в виде единого процесса, с внешней средой. Декомпозиция процесса проводится до уровня, на котором фигурируют элементарные процессы, которые могут быть представлены одностраничными описаниями алгоритмов (миниспецификациями) на терминальном языке программирования.
Для описания информационных моделей наибольшее распространение получили диаграммы сущность-отношение (ERD — Entity-Relation Diagrams), в которых предусмотрены средства для описания сущностей, атрибутов и отношений. Спецификации хранилищ данных в CASE, как правило, даются с помощью диаграмм сущность-отношение. Стандартной методикой построения таких диаграмм является IDEF1X.
Поведенческие модели описывают процессы обработки информации. В инструментальных CASE-системах их представляют в виде граф-схем, диаграмм перехода состояний, таблиц решений, псевдокодов (языков спецификаций), процедурных языков программирования, в том числе языков четвертого поколения.
В граф-схемах блоки, как и в диаграммах DFD, используют для задания процессов обработки, но дуги имеют иной смысл — они описывают последовательность передач управления (вместе с специальными блоками управления).
В диаграммах перехода состояний узлы соответствуют состояниям моделируемой системы, дуги — переходам из состояние в состояние, атрибуты дуг — условиям перехода и инициируемым при их выполнении действиям. Очевидно, что как и в других конечно-автоматных моделях, кроме графической формы представления диаграмм перехода состояний, можно использовать также табличные формы. Так, при изоморфном представлении с помощью таблиц перехода состояний каждому переходу соответствует строка таблицы, в которой указываются исходное состояние, условие перехода, инициируемое при этом действие и новое состояние после перехода.
Близкий по своему характеру способ описания процессов основан на таблицах решений (или деревьях решений). Каждый столбец таблицы решений соответствует определенному сочетанию условий, при выполнении которых осуществляются действия, указанные в нижерасположенных клетках столбца.
Таблицы решений удобны при описании процессов с многократными ветвлениями. В этих случаях помогают также визуальные языки программирования, в которых для описания процессов используют графические элементы, подобные приведенным на рис. 2.
|
Рис. 2. Примеры описания операторов в визуальных языках программирования
В псевдокодах алгоритмы записываются с помощью как средств некоторого языка программирования (преимущественно для управляющих операторов), так и естественного языка (для выражения содержания вычислительных блоков). Используются конструкции (операторы) следования, условные, цикла. Служебные слова из базового языка программирования или из DFD записываются заглавными буквами, фразы естественного языка — строчными.
Языки четвертого поколения предназначены для описания программ как совокупностей заранее разработанных программных модулей. Поэтому одна команда языка четвертого поколения может соответствовать значительному фрагменту программы на языке 3GL. Примерами языков 4GL могут служить Informix-4GL, JAM, NewEra, XAL.
Миниспецификации процессов могут быть выражены с помощью псевдокодов (языков спецификаций), визуальных языков проектирования или языков программирования,
Объектный подход представлен компонентно-ориентированными технологиями разработки ПО. При объектном подходе ПО формируется из компонентов, объединяющих в себе алгоритмы и данные и взаимодействующих путем обмена сообщениями. Для поддержки объектного подхода разработан стандартный язык моделирования приложений UML.
