Процесс разработки программно-управляемых изделий сопровождается подготовкой програм- мной документации (ПД) на различных этапах проектирования: эскизное проектирование, технический проект, технические предложения, рабочее конструкторское проектирование. Номенклатура разрабатываемых документов регламентируется соответствующими государственными стандартами, в частности ГОСТ 19.101-77, и зависит от сложности программы (компонента, комплекса) и области ее применения.
В арсенале разработчиков ПД сегодня имеются различные программные средства, автоматизирующие процесс ее подготовки. Широкое практическое применение получили системы 3SL Cradle 7.0 и ДС БАРС КТ-178В, предназначенные для контроля жизненного цикла ПО, а также текстовый процессор Word, используемый для оформления текстовой документации, и т.д. [1–4].
Основной особенностью применения таких программных средств является их узкая специализация, обеспечивающая разработчику возможность автоматизировать процесс подготовки ограниченного числа видов ПД в отрыве от общего числа до- кументов, разрабатываемых на проект в целом. Та- ким образом, разработчики вынуждены устанавливать на инструментальную ЭВМ автоматизированного рабочего места (АРМ) различные виды САПР и оформлять техническую документацию проекта поочередно – сначала одну группу ПД с использованием одного вида САПР, затем другую группу ПД с использованием другого вида САПР и т.д. При этом эффективность автоматизации процесса разработки ПД от применения САПР резко снижается и в ряде случаев взаимосвязь между данными, являющимися составной частью различных документов, оказывается сосредоточенной только в памяти разработчика, что создает предпосылки для возникновения ошибок проектирования.
В связи с этим актуальной является задача разработки отраслевых САПР, позволяющих разработчикам осуществлять автоматизированную поддержку процесса сквозного проектирования ПД на программу. Основные методологические аспекты построения отраслевой САПР в области авиаприборостроения приведены в [5–10]. Цель настоящей статьи – представить широкому кругу читателей результаты исследований, направленных на разра- ботку инструментального средства, реализуемого программным способом, для автоматизированного формирования взаимосвязанных текстовых программных документов на основе обработки данных проекта.
Номенклатура разрабатываемых ПД
Основополагающим общетехническим документом, который регулирует на предприятии от- ношения заказчика (военного представителя) и разработчика в части объема и видов ПД, разрабатываемых на программно-управляемое изделие на определенном этапе проектирования, является протокол номенклатуры ПД. В нем указывается следующее: исчерпывающий перечень ПД, подготавливаемых на программу; используемые при этом САПР, включая версии ПО, установленные на инструментальной ЭВМ АРМ; подразделения – ответственные исполнители по разработке и согласованию (метрология, нормоконтроль, технологический контроль и т.д.) ПД; способ (электронный, на бумажных носителях) и сроки хранения документации в архиве предприятия.
На рисунке 1 приведен граф ПД (пример), разрабатываемых на программно-управляемое изделие. Стрелками схематично показаны взаимосвязи между документами – данные, являющиеся исходными для подготовки пошагово разрабатываемых видов ПД.
На рисунке 1 используются обозначения, принятые в отраслевых стандартах для определения различных кодов ПД: 12 – текст программы, 13 – описание программы, 20 – ведомость эксплуатационных документов, 30 – формуляр, 31 – общее описание, 32 – руководство системного программиста, 33 – руководство программиста, 34 – руководство оператора, 35 – описание языка, 46 – руководство по техническому обслуживанию, 51 – порядок и методика испытаний, 81 – пояснительная записка, ТЗ – техническое задание, Е1 – схема деления изделия на составные части. Взаимосвязи програм- мных документов показаны стрелками.
Описание инструментального средства проектирования взаимосвязанных ПД
Инструментальное средство проектирования взаимосвязанных ПД представляет собой программный продукт, интерфейс пользователя которого показан на рисунке 2. Программа написана на объектно-ориентированном языке программирования высокого уровня C#, на платформе .NET Framework 4 с использованием встроенной презентационной графической подсистемы для построения клиентских приложений WPF. В качестве средства разработки использована интегрированная среда разработки Microsoft Visual Studio 2015 Professional Edition В рабочем окне программы отображаются дерево разрабатываемого проекта (1), рабочая область окна предварительного просмотра (2), рабочая область окна редактирования (3), меню разработчика (4), панель инструментов разработчика (5) и строка состояния процесса проектирования (6).
Дерево разрабатываемого проекта представляет собой удобный для навигации по проекту программный инструмент, в котором отображаются нормативно-техническая документация, необходимая для генерации программной документации, документы служебной переписки разработчика и заказчика, а также разрабатываемые ПД.
Перечень разрабатываемых ПД сопровождается в рабочем окне программы указанием на их версионную принадлежность для каждого документа и состоянием разработки. Единица конфигурации (ЕК, configuration item, CI) – данные жизненного цикла, которые в целях управления конфигурацией рассматриваются как единое целое. В качестве ЕК документ имеет следующие обязательные атрибуты:
- уникальный идентификатор, не изменяемый в процессе жизненного цикла и позволяющий идентифицировать изменение документа на всем его протяжении; используется GUID;
- версия, состоящая из двух натуральных чисел (старшая и младшая части номера версии), увеличивающихся при начале изменения документа; старшая часть отражает номер базовой версии (в случае утверждения документа), младшая – номер редакции в процессе подготовки базовой версии;
- имя – строка, название документа;
- дата и время последнего изменения;
- состояние – одно из значений: «черновик» (draft), «проверка» (proposed), «утверждено» (approved), «отклонен» (declined).
На рисунке 3 представлена схема взаимодействия изменяемых и постоянных атрибутов ЕК.
Дерево проекта, представленное на рисунке 2, программно реализовано от API-функции (applica tion programming interface) System.Windows.Controls.TreeView операционной системы Windows инструментальной ЭВМ АРМ. Каждый вид элемента разрабатываемого ПД представлен соответствующим видом ярлыка в рабочем окне программы в рабочем поле (1).
Рабочая область окна предварительного просмотра (2) позволяет разработчику оценивать содержание и оформление ПД при его автоматизированной генерации. Инструментальные средства САПР позволяют разработчику просматривать проект документа (режим предварительного просмотра) перед его сохранением на диске и при необходимости распечатать его на бумажный носи- тель. Реализовано несколько полезных возможностей:
- поиск текста в конструкторском документе по ключевым словам, заданным в строке поиска;
- масштабирование документа для удобства его предварительного просмотра.
Меню разработчика (4) в рабочем окне программы, показанном на рисунке 2, представлено следующими опциями.
· «Проект». Включает стандартные функции для работы с текущим проектом (создание нового проекта, загрузка существующего проекта из дискового накопителя, сохранение внесенных изменений в проекте). Опция позволяет выбрать шаблон документа, созданный на предприятии на основе требований отраслевых стандартов, а также сохранять документ на диске инструментальной ЭВМ АРМ в универсальном формате XML (eXtensible Markup Language) для поддержки просмотра и редактирования документа в стандартных текстовых редакторах.
· «Конфигурация». Включает функции для создания разработчиком конфигурации атрибутов элементов ПД, зависящих от типа документа и соответствующей нормативно-технической документации. Атрибуты документа могут быть одного из следующих типов: произвольный текст, список из нескольких элементов, который формирует раз- работчик конфигурации, логическое значение.
· «Инструменты». Включает функции автоматизированного контроля соответствия документа требованиям нормативно-технической документации, а также функции генерации документа в формате текстового процессора Word.
· «Настройки». Подменю, где разработчику доступно изменение настроек функционирования рабочей программы, а именно: частота автосохранения проекта на диске инструментальной ЭВМ, язык интерфейса программы и т.д.
· «Поддержка». Включает подменю с формой для обращения разработчика в службу технической поддержки, организованную разработчиком САПР (при необходимости).
· «О программе». Содержит сведения о версионной принадлежности САПР.
Панели инструментов (5) разработчика позволяют разработчику получить быстрый доступ к наиболее часто используемым инструментальным средствам программы создания взаимосвязанных ПД.
Строка состояния (6) процесса проектирования представляет разработчику справочные данные и допускает следующие виды состояний програм- мы: Ready (программа готова к использованию), Loading (загрузка проекта или документа), Generation (генерация ПД), Save (сохранение проекта на диске).
Пример использования шаблонов конструкторских документов
Программа разработки текстовой программной документации использует шаблоны оформления, основанные на требованиях нормативно-технической документации (отраслевые стандарты). Программа предполагает подготовку отчетных текстовых документов в электронном виде в формате файлов dot или doc. Алгоритм процесса создания проекта с использованием программных шаблонов представлен на рисунке 4.
При генерации ПД пользователь может выбрать готовый шаблон или задать и сохранить свой собственный, по которому будет оформлен документ. Автоматически в документе формируются следующие элементы: титульный лист, содержание, таб- лицы требований, колонтитулы, а также при необ- ходимости специальные элементы (таблица квалификационных методов, матрица прослеживаемости и пр.).
Фрагмент кода программы, написанной на высокоуровневом языке программирования C#, который обрабатывает документ в формате dot, содержащий необходимый шаблон, представлен на рисунке 5.
Таким образом, в программе САПР реализована автоматизированная обработка структурированных электронных текстовых ПД с целью извлечения из них инженерных данных, используемых в ПД, разрабатываемых на последующих этапах проектирования.
Заключение
Разработка системы автоматизации оформления технической документации является экономически выгодной. Предлагаемая программа САПР позволяет автоматизировать на приборостроительном предприятии работу разработчиков программно-управляемых изделий, связанную с подготовкой программной документации.
Программа САПР имеет объективные преимущества перед известными программными продук- тами аналогичного назначения, такими как 3SL Cradle 7.0 и ДС БАРС КТ-178В, за счет наличия встроенной опции контроля версий, позволяющей разработчику сопровождать изделия, разработанные по разным версиям ПД, в жизненном цикле продукции, и создавать архивные версии комплектов ПД в электронном виде.
Программное средство разработано и функционирует на базе инструментальной ЭВМ с характеристиками: процессор Intel(R) Core(TM) i5-6300HQ, 4 ядра, тактовая частота 2,3 ГГц, оперативная память 8 Gb под управлением Windows 7.
Литература
1. Авдеева М., Чир- кин А. Перевод бумажной документации в электронный вид // САПР и графика. 2004. № 1. С. 70–72.
2. Садовников Д., Ноздрин А., Ширяев Н. Система управления технической и проектно-конструкторской документацией // САПР и графика. 2002. № 5. С. 74–77.
3. Кукаренко Е., Молочко Д. Управление потоками знаний в техническом документообороте предприятия // САПР и графика. 2001. № 10. С. 35–37.
4. Бычков И., Ващук Ю. Конструкторская специфика- ция – информационная основа управления предприятием // САПР и графика. 2001. № 9. С. 90–95.
5. Брахутин А.Г. CALS выходит на федеральный уровень // Вестн. авиации и космонавтики. 2001. № 5. С. 26–27.
6. Богатырев В.А. Комбинаторно-вероятностная оценка надежности и отказоустойчивости кластерных систем // Приборы и системы. Управление, контроль, диагностика. 2006. № 6. С. 21–26.
7. Богатырев В.А. Надежность и эффективность резервирования компьютерных сетей // Информационные технологии. 2006. № 9. С. 25–30.
8. Парамонов П.П., Гатчин Ю.А., Жаринов И.О., Жари- нов О.О., Дейко М.С. Принципы построения отраслевой системы автоматизированного проектирования в авиационном приборостроении // Науч.-технич. вестн. информ. технологий, механики и оптики. 2012. № 6. С. 111–117.
9. Богатырев В.А., Богатырев С.В. Объединение резервированных серверов в кластеры высоконадежной компьютерной системы // Информационные технологии. 2009. № 6. С. 41–47.
10. Жаринов И.О., Жаринов О.О., Шек-Иовсепянц Р.А., Суслов В.Д. Оценка снижения трудоемкости подготовки конструкторской документации с использованием CALS-технологии в приборостроении // Науч.-технич. вестн. информ. технологий, механики и оптики. 2012. № 4. С. 151–153.