доступ к общей структуре графических и служебных данных. В системе CADdy весь интерфейс пользователя строится на окнах меню и командный язык отсутствует.
Разработчики системы CADdy ориентировались на использование в своей программной среде мощных приложений, созданных другими фирмами, специализирующимися в тех или иных областях проектирования. В итоге CADdy приобрела характерные черты интегрированной программной оболочки, позволяющей стыковать компоненты приложений на уровне исполняемых модулей. Соответствующие компоненты CADdy (библиотеки, утилиты) в совокупности образуют аналог комплекса инструментальных средств Windows.
Вместе с тем, учитывая потребности пользователей, разработчики ввели в состав CADdy возможности для быстрой перестройки системы меню и мощную встроенную систему программирования PLUS. Встроенная система программирования служит для описания элементов чертежей и дает возможности вызова любых внешних EXE-модулей, что позволяет использовать программы на PLUS совместно с любыми другими программами.
Cовременный уровень проблемно-ориентированного прикладного программного обеспечения представляют системы
CAD/CAM - Computer Aided Desing/Computer Aided Manufacturing - системы автоматизированного проектирования и производства. Системы CAD/CAM, как правило, ориентированы на использование рабочих станций фирм Hewlett Packard, SUN, DEC, IBM и являются достаточно дорогими. Однако, несмотря на это, сейчас идет процесс активного внедрения систем CAD/CAM в отечественную промышленность.
Одной из наиболее распространенных CAD/CAM систем является система Pro/ENGINEER американской фирмы Parametric
Technology Corporation. Система Pro/ENGINEER формирует трехмерные геометрические объекты, проводит их модификацию, разрабатывает техническую документацию, создает графическую базу данных. Система Pro/ENGINEER является полностью интегрированной средой, в которой деталь поочередно проходит все уровни инженерной подготовки. Pro/ENGINEER позволяет проектировать модель, как комбинацию отдельных характерных
96
элементов. Это позволяет отказаться при проектировании от сложных геометрических систем. Параметрическая основа системы позволяет присваивать определенные символы элементам геометрии детали и отслеживать соответствие размеров деталей из различных чертежей. Такие возможности значительно облегчают внесение изменений и способствуют оптимизации конструкторских работ.
В последние годы появились системы прототайпинга (prototyping - макетирование, разработка упрощенной версии) для экспресс-изготовления объемных моделей деталей и сборочных единиц из прессованной бумаги, фторопласта и других полимеров, работающие под управлением мощных CAD/CAM систем.
ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРИКЛАДНОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ
К объектно-ориентированному прикладному программному обеспечению относятся узкоспециализированные программные средства, предназначенные для обработки информации, связанной непосредственно с объектом проектирования. Данное программное обеспечение предназначено для автоматизации проектирования конкретных объектов электромеханики и электроэнергетики.
Исходя из общих определений понятия информации, проектирование рассматривают как процесс преобразования начального описания объекта в конечное, достаточное для реализации этого объекта в натуре или оценки его характеристик на промежуточных этапах. При автоматизированном проектировании такое описание создается в виде цифровой модели объекта проектирования, содержащей сведения о структуре объекта проектирования, его элементах и характеристиках. Первоначально цифровая модель формируется на основе описания объекта проектирования на входном языке. В процессе автоматизированного проектирования цифровая модель изменяется как структурно, так и по содержанию информации. Эти изменения производят проектировщик или соответствующие
97
специализированные программы автоматизированного проектирования.
Специализированное программное обеспечение включает тысячи программ. Создание таких больших программных систем связано с решением проблем декомпозиции прикладного программного обеспечения на подсистемы, разработки и унификации интерфейсов между подсистемами, выбором архитектуры системы в зависимости от конфигурации технических средств, возможностей операционной системы и универсального прикладного программного обеспечения.
Средства объектно-ориентированного прикладного программного обеспечения, непосредственно осуществляющие выполнение операций по преобразованию проектной информации, составляют библиотеку программных модулей проектирования, которая имеет иерархическую трехуровневую структуру. Первый уровень содержит перечень функциональных разделов библиотеки, соответствующих конкретным этапам проектирования, второй уровень - перечень программных средств, реализующих данный раздел, третий уровень включает информацию, характеризующую конкретный алгоритм проектного расчета, способ его использования, условия выполнения программного модуля и непосредственно программный модуль, представленный в форме загрузочного модуля.
Схема взаимодействия пользователя с библиотекой программных модулей следующая: монитор системы, реализуя активный диалоговый режим работы, находит файл разделов и выводит его на экран, после чего пользователь выбирает нужный раздел, а затем конкретный программный модуль и анализирует описание алгоритма проектного расчета. Если пользователя устраивает предъявленный программный модуль, он вызывает инструкцию по применению программы, после чего автоматически запускается и сама программа. После отработки программы управление вновь передается монитору и описанная процедура выбора программного модуля повторяется снова.
При расширении разделов библиотеки программных модулей процесс включения нового программного модуля предусматривает выполнение следующих операций:
98
формирование и автономная отладка программы, реализующей данный алгоритм проектного расчета;
разработка инструкции по эксплуатации программы и занесение ее в дисковый файл;
создание краткого описания алгоритма проектного расчета и занесение его в дисковый файл.
Имена всех трех дисковых файлов: загрузочного модуля, инструкции по эксплуатации и описания алгоритма проектного расчета должны совпадать. После создания указанных файлов корректируется справочник раздела - заносится общее имя файла
икраткое название данного алгоритма проектного расчета.
5.4.РАЗРАБОТКА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ
СИСТЕМЫ ПРОГРАММИРОВАНИЯ
Для разработки объектно-ориентированного прикладного программного обеспечения используются системы программирования, то есть системы для разработки новых программ.
Современные системы программирования предоставляют весьма мощные и удобные средства для разработки программ, в них входят:
компилятор, осуществляющий преобразование программ на языке программирования в программу в машинных кодах, или интерпретатор, осуществляющий непосредственное выполнение текста программы на языке программирования высокого уровня;
библиотеки подпрограмм, содержащие заранее подготовленные подпрограммы, которыми могут пользоваться программисты;
различные вспомогательные программы, например, отладчики.
Для популярных языков программирования существует множество систем программирования. Естественно, что программисты предпочитают те системы, которые легки в использовании, позволяют получить эффективные программы,
99
имеют богатые библиотеки подпрограмм и мощные возможности для отладки разрабатываемых программ.
ТЕХНОЛОГИЯ ПРОГРАММИРОВАНИЯ
Стоимость разработки программного обеспечения зависит от его объема, от используемых языков и технологий проектирования программ. Под технологией программирования понимается совокупность обобщенных и систематизированных знаний об оптимальных способах (приемах и процедурах) проведения процесса программирования, обеспечивающего в заданных условиях получение программной продукции с заданными свойствами. К технологическим средствам программирования относятся: технические средства взаимодействия программиста с ЭВМ, языки и системы программирования, текстовые и графические редакторы, библиотеки программ, средства проведения тестирования и комплексной отладки программных средств.
Ключевым вопросом для технологии программирования является стратегия проектирования - сверху вниз или снизу вверх.
Нисходящее проектирования в настоящее время является наиболее распространенным и состоит в том, что построение программного обеспечения начинается с самых общих представлений о проекте и его реализация производится методом пошаговой детализации алгоритмов и структур данных до окончательной записи программ на одном из языков программирования.
Технологии, поддерживающие нисходящее проектирование, могут иметь некоторые объектно-ориентированные языки для формального описания (заданий, спецификаций, алгоритмов) на различных стадиях и шагах детализации проекта. К недостаткам нисходящего проектирования относят две основные его проблемы, которые влияют на эффективность реализации программного обеспечения.
Первая проблема связана с начальным выбором правильности структур данных и уровня их детализации. Если
100