Материал: основы проектирования хим произв дворецкий

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

246Глава 7. НОВЫЕ ПОДХОДЫ К АППАРАТУРНО-ТЕХНОЛОГИЧЕСКОМУ ОФОРМЛЕНИЮ…

7.3.3.ЛИНГВИСТИЧЕСКОЕ ОБЕСПЕЧЕНИЕ САПР

1.CASE-технология в широком смысле представляет собой совокупность методологий анализа, автоматического проектирования, разработки и сопровождения программного обеспечения технических объектов [39]. Аббревиатура CASE используется для двух направлений проектирования систем. Первое – Computer Aided System Engineering – направлено на решение задач концептуального проектирования сложных слабоструктурированных систем. CASE-технологии этого направления называют системами CASE для концептуального проектирования.

Второе направление – Computer Aided Software Engineering – решает задачи автоматизированного проектирования программного обеспечения. Эти CASEсистемы называют или инструментальными средами разработки ПО (инструментальными CASE-системами).

Среди систем CASE первого направления выделяют системы функционального и информационного (поведенческого) проектирования. Наиболее распространенной методикой функционального проектирования сложных систем явля-

ется методика SADT (Structured Analysis and Design Technique). Эта методика стала основой стандарта IDEF0 (Integrated Definition 0). Программные средства информационного проектирования реализуют методики инфологического проектирования баз данных. Широкое распространение получила методика создания информационных моделей IDEF1X. Применение инструментальных CASEсистем позволяет сократить затраты на разработку ПО за счет уменьшения числа итераций и числа ошибок, а также улучшить качество ПО вследствие лучшего взаимопонимания разработчика и заказчика. При этом облегчается сопровождение готового программного продукта.

CASE-средства представляют собой программные продукты, используемые как для автоматизированной разработки определенных видов моделей, например, функциональных, информационных, так и для автоматизированного создания программного обеспечения технических объектов. В последнем случае CASEсредства поддерживают все этапы проектирования прикладного программного обеспечения и баз данных от формулировки требований до генерации кода, тестирования документирования и сопровождения в процессе эксплуатации.

Спозиции решения задач моделирования CASE-технологии широко применяются для моделирования технических систем. Исключительно большое значение CASE-технологии имеют для разработки моделей технических объектов, в частности функциональных и информационных, которые необходимы для решения задач системного анализа, проектирования, реинжиниринга и др.

Большинство CASE-средств основано на парадигме методология – метод – нотация – средство. Методология определяет руководящие указания для оценки и выбора проекта разрабатываемого ПО, шаги работы и их последовательность, а также правила распределения и назначения методов. Метод – это систематическая процедура или техника генерации описаний компонент ПО, например, проектирование потоков и структур данных. Нотация представляет собой формат опи-

ПРОГРАММНЫЕ ПРОДУКТЫ САПР

247

 

 

сания структуры системы, элементов данных, этапов обработки; нотации обычно включают графы, диаграммы, таблицы, блок-схемы, формальные и естественные языки. Средства – инструментарий для поддержки и усиления методов, они поддерживают работу пользователей при создании и редактировании графической части проекта в интерактивном режиме, способствуют организации проекта в виде иерархии уровней абстракции, выполняют проверки соответствия компонентов.

Основными достоинствами CASE-технологий для моделирования технических объектов являются следующие:

значительно сокращается время на разработку моделей;

исследователь (разработчик, проектировщик) освобождается от рутинной работы, связанной с оформлением, представлением и хранением результатов моделирования за счет автоматизации соответствующих процессов, это позволяет ему основное внимание уделять творческой части разработки;

разрабатываемые модели соответствуют действующим нормативным документам, их описание пригодно для широкого использования без дополнительных пояснений;

улучшается качество создаваемых моделей за счет средств автоматического контроля;

автоматизирован процесс развития и сопровождения результатов моделирования.

Современные CASE-системы характеризуются следующими особенностями: 1. Единство графического языка описания проекта. Все участники проекта, использующие CASE-технологии, обеспечиваются единым, наглядным и понятным графическим языком, в соответствии с которым документация представляется двумерными схемами. Это позволяет заказчику и разработчикам, в том числе экспертам предметной области, системным аналитикам, программистам и другим участникам проекта быстро вносить необходимые изменения и облегчает

выполнение проекта, сопровождение систем при эксплуатации.

2. Единство базы данных проекта, которая составляет основу CASEтехнологии. База данных (репозиторий) содержит всю информацию о выполняемом и предыдущих проектах. Она включает информационные объекты различных типов, отношения между их компонентами, правила использования и обработки этих компонентов. В репозитории хранятся объекты самых различных типов, в том числе структурные диаграммы, описания и модели данных, отчеты проектов, исходные коды и т.п.

3. Интеграция всех используемых средств и разделение системной информации между участниками проекта в соответствии с правами доступа. CASEсредства предусматривают несколько уровней интеграции, которые охватывают общий пользовательский интерфейс, передачу данных между средствами, интеграцию этапов, разработку через единую систему представления стадий жизненного цикла проекта, а также передачу данных между различными платформами компьютерных систем.

248Глава 7. НОВЫЕ ПОДХОДЫ К АППАРАТУРНО-ТЕХНОЛОГИЧЕСКОМУ ОФОРМЛЕНИЮ…

4.Поддержка коллективной работы над проектом и управление проектом. CASE-средства обеспечивают возможность работы в режиме удаленного доступа, выполнять экспорт-импорт фрагментов проекта по сети для их развития или модификации, планирование, контроль и обеспечение безопасности и руководство проектом.

5.Автоматическая генерация документации по проекту – документация выполняется в соответствии с требованиями действующих стандартов и всегда соответствует текущему состоянию дел, так как любые изменения в проекте автоматически без запаздывания отражаются в репозитории.

6.Возможность макетирования разрабатываемой системы – позволяет заказчику на ранних стадиях жизненного цикла проекта оценить эффективность системы при реальной эксплуатации.

7.Автоматическая генерация программного кода – позволяет построить до 80…90% текстов на языках высокого уровня в автоматическом режиме.

8.Автоматическая верификация и контроль проекта на полноту и состоятельность на ранних этапах разработки, благодаря чему снижается риск неудачного завершения работ и повышается конкурентоспособность создаваемого изделия.

9.Сопровождение проекта и реинжиниринг модели технического объекта – позволяет интегрировать получаемые модели в проект, автоматически обновлять документацию при изменении кодов и изменять спецификации при редактировании кодов.

Разработка любой сложной технической, в том числе программной, системы должна начинаться с функционального анализа и моделирования технического объекта в целом и всех его подсистем вплоть до неделимых элементов. Для этой цели разработана методология IDEF0, представляющая собой совокупность методов, правил и процедур, предназначенных для построения функциональной структуры сложных иерархических объектов.

Необходимым инструментом совершенствования сложных технических объектов является функциональное моделирование бизнес-процессов.

Под бизнес-процессом понимается совокупность взаимосвязанных последовательно или параллельно выполняемых операций (действий), которая преобразует материальные или информационные потоки (вход процесса) в соответствующие потоки с другими свойствами (выход процесса). Бизнес-процесс протекает в соответствии с управляющими директивами (командами), вырабатываемыми на основе целей деятельности. В ходе выполнения бизнес-процесса потребляются ресурсы (материальные, энергетические, трудовые, финансовые) и выполняются ограничения со стороны других процессов, а также внешней среды. Основная цель процесса – добавление ценности продукта при минимальных затратах.

Предполагается, что бизнес-процессы одного подразделения объединены общей задачей, заключающейся в оказании услуг друг другу, например, в виде изготовления и поставки продукта. При этом оказание услуг осуществляется согласно единой процедуре.

ПРОГРАММНЫЕ ПРОДУКТЫ САПР

249

 

 

Функциональная модель бизнес-процессов представляет собой многоуровневую систему взаимосвязанных диаграмм, содержащую полное описание процессов жизненного цикла продукта, с выделением узлов действий (блоков), входов, выходов, управлений (условий) и требуемых механизмов (ресурсов).

Каждый узел характеризует действие (процесс, работу, функцию, операцию) по переработке информационных или материальных ресурсов и обозначается прямоугольником. Вход представляет собой то, что перерабатывается процессом (стрелка слева прямоугольника), а выход – результат переработки (стрелка справа). Управлением служит информация, необходимая для выполнения процесса (стрелка сверху). Механизмы обеспечивают выполнение (реализацию) процесса, т.е. оборудование, персонал и т.д.

Построение и вид функциональной модели бизнес-процессов регламентируются на международном уровне федеральными рекомендациями FIPS PUB 183 (США) и стандартом IDEF0. В них описывается метод (язык), правила и методика структурированного графического описания бизнес-процессов.

В отличие от простейших математических функций, использующих в качестве переменных только числовые величины, в объект-функциях могут использоваться кроме числовых и нечисловые переменные. Все стрелки в диаграммах IDEF0 получаются стрелочными надписями, в качестве которых могут использоваться идентификаторы или наименования переменных.

С точки зрения ИИ диаграмма в среде IDEF0 представляет собой семантическую сеть, т.е. граф с помеченными вершинами (объект-функциями) и ребрами. С математической точки зрения такая диаграмма эквивалентна сложной функции

Y (F1(X1 ), F2 (X 2 ), ..., Fk (X k )).

При построении функциональной модели сложного технического объекта используется метод декомпозиции, т.е. сначала описывается общее действие получения продукта (нулевой уровень), затем общее действие раскладывается на несколько основных крупных действий (первый уровень), далее каждое крупное действие описывается с помощью более мелких операций (второй уровень) и т.д. Соответственно раскладываются управления и механизмы при переходе от крупных структур к более мелким.

Важной особенностью функционального моделирования бизнес-процессов является то, что описание строится вокруг действий, а не вокруг организационной структуры. Функциональная модель показывает непосредственных участников бизнес-процессов, элементы оргструктуры предприятия, задействованные в получении продукции, наглядно представляют работы, выполняемые различными подразделениями, и оборудование.

Представление информационных структур и данных, используемых в функциональной модели, описывается и графически изображается с помощью информационной модели, которая отражает структуру баз данных и информационные потоки с позиций семантики, т.е. описании данных в контексте их взаимосвязи с другими данными. Конструктивными элементами этой модели являются

250 Глава 7. НОВЫЕ ПОДХОДЫ К АППАРАТУРНО-ТЕХНОЛОГИЧЕСКОМУ ОФОРМЛЕНИЮ…

сущности, изображаемые блоками, отношения между сущностями, которые обозначаются линиями, соединяющими блоки, и атрибуты (имена внутри блоков).

Например, основными сущностями в информационной модели процессов проектирования ХТС являются модель динамики объекта, минимизируемый функционал, накладываемые ограничения и связи, стратегия реализации оптимального управления.

Построение информационной модели регламентируется стандартом IDEF1X (FIPS 184).

Разработанные функциональные и информационные модели могут служить основой для проектирования новых и совершенствования существующих ХТС.

CASE-системы часто отождествляют с инструментальными средами разработки программного обеспечения, называемыми средами быстрой разработки приложений (RAD – Rapid Application Development). Примерами широко известных инструментальных сред RAD являются Visual Basic, Delphi, PowerBuilder

фирм Microsoft, Borland, PowerSoft соответственно. Применение инструментальных средств существенно сокращает объем ручной работы программистов, особенно при проектировании интегративных частей программ.

Большое практическое значение имеют инструментальные среды для разработки прикладных программ, предназначенных для работы под управлением операционных систем Windows, в связи с широкой распространенностью последних. Простейшая система для написания Windows-программ на языке C++ основана на использовании библиотеки Dynamic Link Library, которая содержит модули, реализующие функции Application Programming Interface для связи прикладных программ с операционной системой Windows. Эта система получила развитие в Microsoft Foundation Classes, представляющей собой библиотеку классов для автоматического создания каркасов программного обеспечения многоуровневых приложений. В библиотеке имеются средства для поддержания оконного интерфейса, работы с файлами и др. [39].

В средах быстрой разработки приложений RAD обычно реализуется способ программирования, называемый управлением событиями. При этом достигается автоматическое создание каркасов программ, существенно сокращается объем ручного кодирования. В этих средах пользователь может работать одновременно с несколькими экранами (окнами). Типичными являются окна из следующего списка:

1.Окно меню с пунктами «file», «edit», «window» и т.п., реализующими функции, очевидные из названия пунктов.

2.Окно формы, на котором собственно и создается прототип экрана будущей прикладной программы.

3.Палитра инструментов – набор изображений объектов пользовательского интерфейса, из которых можно компоновать содержимое окна формы.

4.Окно свойств и событий, с помощью которого ставятся в соответствие друг другу объекты окна формы, события и обработчики событий. Событием в при-

кладной программе является нажатие клавиши или установка курсора мыши в объект формы. Каждому событию должна соответствовать событийная процеду-