ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ САПР
4.1. Программное обеспечение САПР - сложная программная система
Программное обеспечение САПР (ПО САПР) представляет собой сложную программную систему, включающую в себя десятки и сотни компонентов. ПО САПР - это совокупность программ на машинных носителях с необходимой программной документацией, предназначенной для выполнения автоматизированного проектирования.
Создание ПО САПР - трудная научно-техническая задача, для решения которой требуются большие материальные затраты. Известны САПР, ПО которых насчитывает до 500 тыс. операторов языка программирования. Разработка такого ПО требует сотен и тысяч человеко-лет, причем требования к квалификации разработчиков таких систем очень высоки. Например, в разработке САПР морских судов, оцениваемой в 600 человеко-лет, принимало участие 15 организаций. Стоимость современных САПР определяется главным образом стоимостью ПО, которое в несколько раз превышает стоимость технического обеспечения.
Средняя производительность труда программистов в организациях, занимающихся промышленной разработкой ПО, составляет 1000-2000 операторов в год. В США цена одного оператора программы колеблется в зависимости от степени сложности ПО от 15 до 700 $ ; по данным на 1985 г. один час работы программиста стоит в 5 раз дороже одного часа работы ЭВМ быстродействием 300 тыс. операций/с. Приведенные данные касаются ПО, представляющего собой законченный программный продукт, поставляемый как промышленное изделие. В отличие от программ индивидуального пользования, предназначенных только для обслуживания их разработчика, программный продукт:
1) имеет универсальное назначение, ориентирован на применение многими пользователями и в ряде организаций;
2) предназначен для работы в комплексе с другими компонентами программного обеспечения;
3) имеет специальные средства модификации и расширения;
4) всесторонне отлажен;
5) описан в тщательно составленной документации.
Стоимость программного продукта приблизительно в 8-10 раз выше стоимости программы индивидуального назначения и с увеличением его сложности растет по квадратичному закону.
Для оценки сложности ПО используются два основных показателя:
1) количество операторов;
2) количество и типы взаимосвязей компонентов ПО между собой.
Этот показатель более важный, так как именно он определяет эффективность декомпозиции исходной задачи декомпозиции ПО в целом на ряд вложенных подзадач разработки его компонентов. Поэтому, в частности, трудоемкость разработки управляющих программ выше (приблизительно в 4 раза) трудоемкости разработки прикладных программ.
Пользователи САПР. Пользователь (user) – лицо, пользующееся услугами вычислительной техники для получения информации или решения различных задач.
В САПР можно выделить, по крайней мере, три квалификационные категории пользователей.
Разработчики САПР – специалисты в области применения ЭВМ, способные разрабатывать базовые методы, средства и оснащение САПР, общесистемное ПО, инструментальные и технологические средства проектирования, осуществлять генерацию и настройку САПР на условия конкретного применения.
Прикладные программисты имеют высокую квалификацию, знают методологию проектирования, алгоритмы прикладной области и могут разрабатывать специализированное ПО.
Проектировщики – специалисты в области проектирования, хорошо освоившие возможности САПР для выполнения автоматизированного проектирования.
Проектировщики могут относиться к так называемой категории "пользователь-непрограммист", т.е. к числу специалистов, которые не являются профессионалами в области вычислительной техники, но нуждаются в прямом доступе (без посредников) к ресурсам ЭВМ.
7.2. Состав программного обеспечения САПР
Программное обеспечение подразделяют на базовое, общесистемное и специализированное.
Базовое ПО не является предметом разработки при создании ПО САПР.
Общесистемное ПО является инвариантным к объектам проектирования.
Специализированное ПО функционирует в операционной среде, которая состоит из общесистемного и базового ПО. Основной функцией специализированного ПО САПР является получение проектных решений.
Состав и структура ПО САПР определяются как составом и структурой подсистем САПР, так и САПР в целом.
4.3. Функциональное назначение программного обеспечения САПР
По функциональному назначению ПО САПР можно разделить на ряд программных комплексов (ПК), представляющих собой совокупность программных, информационных, методических, математических и лингвистических компонент, предназначенных для выполнения заданных функций. Можно выделить следующие программные комплексы: проектирующие, обслуживающие и инструментальные.
![]() |
Программные
комплексы
САПР
![]() |
Инструментальные Проектирующие Обслуживающие
![]() |
Проблемно- Объектно-
ориентированные ориентированные
Рис. 4.1. Состав программных комплексов САПР
Проектирующие ПК предназначены для получения законченного проектного решения и в свою очередь делятся на проблемно-ориентированные и объектно-ориентированные. Проблемно-ориентированные ПК выполняют унифицированные проектные процедуры, не зависимые от объекта проектирования. Объектно-ориентированные ПК используются для проектирования объектов определенного класса. Проектирующие ПК входят в состав специализированного ПО.
Обслуживающие ПК предназначены для поддержания работоспособности проектирующих ПК и входят в состав общесистемного ПО.
Инструментальные ПК представляют собой технологические средства, предназначенные для разработки, развития и модернизации ПО САПР.
4.4. Основные принципы проектирования ПО САПР
Проектирование ПО САПР осуществляется на основе принципов системного единства, развития, совместимости и стандартизации.
Принцип системного единства. При создании, функционировании и развитии ПО САПР связи между компонентами должны обеспечивать ее целостность.
Принцип развития. ПО САПР должно создаваться и функционировать с учетом пополнения, совершенствования и обновления ее компонент.
Принцип совместимости. Языки, символы, коды, информация и связи между компонентами должны обеспечивать их совместное функционирование и сохранять открытую структуру системы в целом.
Принцип стандартизации. При проектировании ПО САПР необходимо унифицировать, типизировать и стандартизовать ПО, инвариантное к проектируемым объектам.
Одной и проблем, возникающих при проектировании ПО САПР, является создание единого информационно совместимого между собой программного комплекса, предназначенного для выполнения автоматизированного проектирования.
4.5. Стадии разработки ПО
В соответствии с ГОСТ устанавливаются следующие стадии разработки: техническое задание, эскизный, технический проекты, рабочая документация, внедрение.
Техническое задание (ТЗ). На стадии технического задания выполняются следующие виды работ: постановка задачи; сбор исходных материалов; выбор и обоснование критериев эффективности и качества разрабатываемой программы; обоснование целесообразности применения ранее разработанных программ, принципиальной возможности решения поставленной задачи; предварительный выбор методов решения задач; определение требований к техническим средствам; требований и целей разработки программ; стадий, этапов и сроков разработки программы и документации на нее; разработка технико-экономического обоснования разработки программы; согласование и утверждение ТЗ.
При разработке программного изделия предъявляются требования к функциям, которые должны обеспечиваться изделием; временным и объемным характеристикам программ; к совместимости с другими программами; надежности и достоверности; к методам и средствам настройки на конкретные условия эксплуатации; к удобству использования и сопровождения.
Эскизный проект. На стадии эскизного проектирования выполняются следующие виды работ:
внешнее проектирование программного изделия;
уточнение методов решения задачи;
предварительное проектирование внутренних структур данных;
разработка общего алгоритма решения задачи, укрупненной структурной схемы программного изделия, пояснительной записки.
Внешнее проектирование программного изделия представляет собой процесс описания ожидаемого поведения системы с точки зрения пользователя. Цель данного процесса – проектирование внешнего взаимодействия пользователя с программным изделием.
При разработке эскизного проекта определяются: способы взаимодействия пользователя с программным изделием; функции пользователей; тип языка взаимодействия; структура и содержание информационных кадров и шаблонов диалога; структура входных и выходных данных.
Технический проект. Этапы технического проектирования: проектирование архитектуры программного изделия; структур данных; модульной структуры изделия; модулей; разработка пояснительной записки.
На этапе проектирования архитектуры программное изделие разбивают на составные части; определяют функции каждой компоненты, способы взаимодействия между ними; разрабатывают схемы управления потоками данных.
На этапе проектирования структур данных определяют способы представления, хранения и преобразования входных, выходных и внутренних данных.
На этапе проектирования модульной структуры осуществляется разбиение компонент программного изделия на модули, определение их функции и способов взаимодействия.
На этапе проектирования модулей составляется описание всех модулей программного изделия, которое включает в себя: имя модуля; функции, выполняемые модулем; описание входных и выходных параметров, диапазонов допустимых значений и т.п.; функциональной взаимосвязи между входными и выходными параметрами; событий, внешних по отношению к модулю (печать сообщений, работа с файлами и т.п.); форму обращения к модулю; список модулей, вызывающих данный, и модулей, которые вызывает данный модуль; описание алгоритма модуля.
Рабочая документация. На данной стадии выполняются следующие виды работ: кодирование, тестирование и отладка программ; разработка программных документов в соответствии с ЕСПД; проведение различных видов приемо-сдаточных испытаний; корректировка программ и документации по результатам испытаний.
Стадия внедрения. На стадии внедрения осуществляется подготовка и передача программ и программной документации для сопровождения.
4.6. Общая характеристика методов проектирования программного
обеспечения САПР
Проектирование является важнейшим этапом в современной технологии создания ПО. На этом этапе закладываются не только основные технические характеристики программных изделий, но и определяется содержание и характер работы на остальных этапах разработки: кодирования, тестирования и отладке. Решения, принимаемые на этапе проектирования, определяют простоту или сложность сопровождения.