Современные информационные технологии / 1. Компьютерная инженерия

 

Д.т.н. Григорьев О.Г., д.т.н. Волкова Г.Д., к.т.н. Новоселова О.В., Григорьева Л., аспирант Тюрбеева Т.Б.

ФГБОУ ВПО МГТУ «СТАНКИН», Россия

Исследование методов и подходов при создании автоматизированных систем различного назначения

        

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

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

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

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

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

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

В работе исследовались наиболее широко распространенные методологии:

- IDEF и CASE, оформившиеся в рамках структурного подхода;

- унифицированный язык моделирования (Unified Modeling Language, UML), разработанный для моделирования и проектирования автоматизированных систем на основе объектно-ориентированного подхода;

- алгоритмический язык ДРАКОН, методология автоматизации интеллектуального труда (МАИТ) как представители когнитивного подхода.

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

Анализ методов и методологий проводился в соответствии со следующими критериями:

- назначение методологии;

- область применения методологии;

- охват этапов жизненного цикла создаваемой прикладной автоматизированной системы;

- набор модельных представлений;

- наглядность представления результатов моделирования;

- вид получаемой модели (статическая, динамическая, модель поведения);

- удобство применения методологии;

- простота в освоении и использовании;

- возможность получения программного кода на основе полученных результатов.

Сравнительный анализ методологий и методов позволил выявить их достоинства и недостатки.

Наиболее распространенные методы IDEF-методологии [1] (IDEF0, IDEF1, IDEF1X, IDEF3 и др.) задают единый подход к моделированию процессов и их составляющих, но не затрагивают проблематику увязки разнородных моделей в единое целое, унифицированного представления данных  в процессе информационного обмена между разными компьютерными системами и приложениями. Указанные методы, как правило, применяются на начальных этапах моделирования предметной задачи, а именно, при самостоятельном моделировании функциональных, процессных или  информационных структур.

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

         Существенным недостатком методов информационного моделирования IDEF1 и IDEF1X является то, что преломление реального мира через достаточно простую семантическую конструкцию - ”сущность-связь-атрибут” - порождает колоссальные размерности информационного представления в памяти компьютера и, как следствие, усложняет и обработку. Это существенно сказывается при автоматизации достаточно сложных задач – так рекомендуется обычно ограничиваться рассмотрением не более 25-30 сущностей, в противном случае возникают трудности при получении и согласовании информации с предметным специалистом.

Анализ методов CASE-методологии [2] показывает, что практически все методы ориентированы на работу с предметными задачами средней сложности или размера, поэтому техника диаграмм для представления и концептуальных конструкций (ER-структур), и функциональных структур наиболее эффективна, так как обеспечивает наглядность, обозримость и простоту работы с этими представлениями. Хотя CASE-методология и декларирует охват всех этапов жизненного цикла автоматизированных систем, на деле большинство методов относится к фазам проектирования реализации и собственно программированию, тестированию и отладки. Но, как отмечается практически во всех методах, очень сложной остается проблема взаимодействия между заказчиком, аналитиком и программистом. Эффективность такого взаимодействия определяется не только уровнем квалификации каждого - специалиста в своей области, но и другими факторами, трудно поддающимися выявлению. В результате использования  отдельных методов формируется одна из моделей: статическая, динамическая, поведения.

         Использование различных нотаций языка UML [3] в рамках объектно-ориентированного подхода позволяет графически интерпретировать требования заказчиков в терминах возможных конструкций различных объектно-ориентированных языков программирования.

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

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

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

         Основными достоинствами языка ДРАКОН [4] являются: универсальность языка, пригодность для решения широкого круга разноплановых интеллектуальных задач; сочетание строгой логико-математической формализации с точным учетом когнитивных (познавательных) характеристик человека; пригодность, так называемых, дракон-схем для автоматического получения программного кода; наглядность и регулярность структуры представления описываемых процессов; простота в освоении и применении; легкость понимания представления решения.

К недостаткам языка относятся: малая известность языка среди разработчиков автоматизированных систем; сложность интеграции схем и т.д.

В сравнении с другими методологиями, применяемыми при создании прикладных автоматизированных систем, методология автоматизации интеллектуального труда (МАИТ) [5,6] обладает рядом теоретических и методических особенностей и преимуществ: -обеспечивает промышленный способ создания таких систем, т.е. наличие двух видов проектных модельных представлений – инвариантных к средствам реализации и ориентированных на них; -позволяет формировать модельные представления предметных задач на трех уровнях абстрагирования на разных этапах создания автоматизированных систем; -определяет взаимоувязанный набор компонентов модели на любом уровне абстрагирования; -обеспечивает последовательное отображение синтаксических модельных представлений на основе первоначально формируемого семантического представления автоматизируемой задачи; -определяет закономерности формирования модельных представлений различного вида и закономерности их отображения; -имеет достаточную методическую проработку этапов проектирования прикладных автоматизированных систем, позволяющую формировать их взаимосвязанные семантические и синтаксические модельные представления.

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

Выполненное исследование методологий разных подходов к автоматизации производственных и управленческих задач, анализ применяемых в них методов, позволил установить методологические, теоретические и практические ограничения при их использовании для реальных задач, к которым, в частности, можно отнести:  - «сведение» процесса создания систем к проектной деятельности; -отсутствие научно-обоснованной нормативной и методической базы и т.д.

 

Литература:

         1. Черемных С.В., Семенов И.О., Ручкин В.С. Структурный анализ систем. IDEF-технологии. // М. Финансы и статистика, 2001, 208 с.

2. Калянов Г.Н. CASE. Структурный системный анализ (автоматизация и применение)./ М.: Лори,1996., 242с.

3. Буч Г., Рамбо Д., Джекобсон А. UML: специальный справочник. – СПб.: Питер, 2002 г. – 656 с.

4. Паронджанов В.Д. Как улучшить работу ума: Алгоритмы без программистов – это очень просто! – М.: Дело, 2001. – 360 с.

5. Волкова Г.Д. Методология автоматизации интеллектуального труда. (Серия из 3 статей) // Межотраслевая информационная служба: Науч.-метод.журнал - М.: ФГУП «ВИМИ». 2009: Часть1 - вып.2 (147), стр.9-20; Часть 2 - вып.3 (148), стр.10-23; Часть3 - вып.4 (149), стр.15-30.

6. Волкова Г.Д. Методология автоматизации интеллектуального труда. Часть4. // Межотраслевая информационная служба: Науч.-метод.журнал - М.: ФГУП «ВИМИ». 2010: вып.1 (150), стр.4-30.